conductor-oss 0.58.44 → 0.59.0

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 (582) hide show
  1. package/package.json +5 -5
  2. package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
  3. package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +9 -6
  4. package/web/.next/standalone/packages/web/.next/build-manifest.json +3 -3
  5. package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
  6. package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +20 -12
  7. package/web/.next/standalone/packages/web/.next/routes-manifest.json +18 -0
  8. package/web/.next/standalone/packages/web/.next/server/app/__clerk/[[...path]]/route.js +1 -1
  9. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page.js +3 -3
  10. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
  12. package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
  13. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  15. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  16. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +2 -2
  20. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  21. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  22. package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js +1 -1
  23. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js +1 -1
  24. package/web/.next/standalone/packages/web/.next/server/app/api/app-update/route.js +1 -1
  25. package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js +1 -1
  26. package/web/.next/standalone/packages/web/.next/server/app/api/auth/profile/route.js +1 -1
  27. package/web/.next/standalone/packages/web/.next/server/app/api/boards/comments/route.js +1 -1
  28. package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js +1 -1
  29. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/[bridgeId]/route.js +1 -1
  30. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/route.js +1 -1
  31. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/app-update/route.js +1 -1
  32. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/repair/route.js +1 -1
  33. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/route.js +1 -1
  34. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/service-restart/route.js +1 -1
  35. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/claims/complete/route.js +1 -1
  36. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/code/route.js +1 -1
  37. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/route.js +1 -1
  38. package/web/.next/standalone/packages/web/.next/server/app/api/bridges/route.js +1 -1
  39. package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js +1 -1
  40. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/open/route.js +1 -1
  41. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js +1 -1
  42. package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js +1 -1
  43. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js +1 -1
  44. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js +1 -1
  45. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js +1 -1
  46. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/route.js +1 -1
  47. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/sync/route.js +1 -1
  48. package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js +1 -1
  49. package/web/.next/standalone/packages/web/.next/server/app/api/github/webhook/route.js +1 -1
  50. package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js +1 -1
  51. package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js +1 -1
  52. package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js +1 -1
  53. package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js +1 -1
  54. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/file/route.js +1 -0
  55. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/file/route.js.nft.json +1 -0
  56. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/file/route_client-reference-manifest.js +1 -0
  57. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/open/route.js +1 -0
  58. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/open/route.js.nft.json +1 -0
  59. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/open/route_client-reference-manifest.js +1 -0
  60. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/route.js +1 -0
  61. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/route.js.nft.json +1 -0
  62. package/web/.next/standalone/packages/web/.next/server/app/api/project-notes/route_client-reference-manifest.js +1 -0
  63. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/bindings/route.js +1 -1
  64. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/route.js +1 -1
  65. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/stream/route.js +1 -1
  66. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/integration/route.js +1 -1
  67. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/interrupt/route.js +1 -1
  68. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/preferences/route.js +1 -1
  69. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/route.js +1 -1
  70. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/send/route.js +1 -1
  71. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route.js +1 -1
  72. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/route.js +1 -1
  73. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/route.js +1 -1
  74. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatchers/route.js +1 -1
  75. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/open/route.js +1 -1
  76. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/route.js +1 -1
  77. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/setup/route.js +1 -1
  78. package/web/.next/standalone/packages/web/.next/server/app/api/projects/route.js +1 -1
  79. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js +1 -1
  80. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js +1 -1
  81. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js +1 -1
  82. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
  83. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js +1 -1
  84. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js +1 -1
  85. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js +1 -1
  86. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js +1 -1
  87. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js +1 -1
  88. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js +1 -1
  89. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js +1 -1
  90. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/dom/route.js +1 -1
  91. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/dom/route.js.nft.json +1 -1
  92. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/route.js +1 -1
  93. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/route.js.nft.json +1 -1
  94. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/screenshot/route.js +1 -1
  95. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/screenshot/route.js.nft.json +1 -1
  96. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js +1 -1
  97. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js +1 -1
  98. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/relay/route.js +1 -1
  99. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/snapshot/route.js +1 -1
  100. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js +1 -1
  101. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route.js +1 -1
  102. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route.js +1 -1
  103. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js +1 -1
  104. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js +1 -1
  105. package/web/.next/standalone/packages/web/.next/server/app/api/skills/activate/route.js +1 -1
  106. package/web/.next/standalone/packages/web/.next/server/app/api/skills/catalog/route.js +1 -1
  107. package/web/.next/standalone/packages/web/.next/server/app/api/skills/deactivate/route.js +1 -1
  108. package/web/.next/standalone/packages/web/.next/server/app/api/skills/install/route.js +1 -1
  109. package/web/.next/standalone/packages/web/.next/server/app/api/skills/installed/route.js +1 -1
  110. package/web/.next/standalone/packages/web/.next/server/app/api/skills/session-active/route.js +1 -1
  111. package/web/.next/standalone/packages/web/.next/server/app/api/skills/uninstall/route.js +1 -1
  112. package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js +1 -1
  113. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js +1 -1
  114. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js +1 -1
  115. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +2 -2
  116. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
  117. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
  118. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.ps1/route.js +2 -2
  119. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.sh/route.js +2 -2
  120. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js +2 -2
  121. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js.nft.json +1 -1
  122. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page_client-reference-manifest.js +1 -1
  123. package/web/.next/standalone/packages/web/.next/server/app/icon.svg/route.js +1 -1
  124. package/web/.next/standalone/packages/web/.next/server/app/page.js +2 -2
  125. package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
  126. package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
  127. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +2 -2
  128. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  129. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  130. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +2 -2
  131. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
  132. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
  133. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +2 -2
  134. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
  135. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
  136. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +2 -2
  137. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
  138. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
  139. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +2 -2
  140. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
  141. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
  142. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +2 -2
  143. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
  144. package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
  145. package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +9 -6
  146. package/web/.next/standalone/packages/web/.next/server/chunks/1669.js +1 -0
  147. package/web/.next/standalone/packages/web/.next/server/chunks/1827.js +1 -0
  148. package/web/.next/standalone/packages/web/.next/server/chunks/2089.js +3 -3
  149. package/web/.next/standalone/packages/web/.next/server/chunks/4684.js +1 -0
  150. package/web/.next/standalone/packages/web/.next/server/chunks/5523.js +1 -0
  151. package/web/.next/standalone/packages/web/.next/server/chunks/5819.js +1 -0
  152. package/web/.next/standalone/packages/web/.next/server/chunks/6014.js +1 -1
  153. package/web/.next/standalone/packages/web/.next/server/chunks/6034.js +1 -1
  154. package/web/.next/standalone/packages/web/.next/server/chunks/6829.js +1 -0
  155. package/web/.next/standalone/packages/web/.next/server/chunks/7548.js +1 -1
  156. package/web/.next/standalone/packages/web/.next/server/chunks/8786.js +1 -0
  157. package/web/.next/standalone/packages/web/.next/server/chunks/8856.js +3 -0
  158. package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
  159. package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
  160. package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
  161. package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
  162. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
  163. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
  164. package/web/.next/standalone/packages/web/.next/static/chunks/232.57818194757d40c9.js +1 -0
  165. package/web/.next/standalone/packages/web/.next/static/chunks/2432.a0011ea18f71e10f.js +3 -0
  166. package/web/.next/standalone/packages/web/.next/static/chunks/2508.c5f5858a9de8e09f.js +1 -0
  167. package/web/.next/standalone/packages/web/.next/static/chunks/{4443.f8b28d258c2c09a2.js → 4443.997d5dfa8119a933.js} +1 -1
  168. package/web/.next/{static/chunks/5493-22c064a41611d50c.js → standalone/packages/web/.next/static/chunks/5493-25f3b71c5227edc8.js} +1 -1
  169. package/web/.next/standalone/packages/web/.next/static/chunks/6817.416855b6674f7c49.js +1 -0
  170. package/web/.next/standalone/packages/web/.next/static/chunks/{8510-e5474f723f1e449c.js → 8510-4f3803a915184f73.js} +1 -1
  171. package/web/.next/standalone/packages/web/.next/static/chunks/{8607.f538d93ee6398358.js → 8607.c40c5d0302dfb7f3.js} +1 -1
  172. package/web/.next/standalone/packages/web/.next/static/chunks/8987.4e4f633f6953de9e.js +3 -0
  173. package/web/.next/standalone/packages/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-4de9a8b2bd537fc8.js +1 -0
  174. package/web/.next/standalone/packages/web/.next/static/chunks/app/_global-error/page-4de9a8b2bd537fc8.js +1 -0
  175. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/access/route-4de9a8b2bd537fc8.js +1 -0
  176. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/agents/route-4de9a8b2bd537fc8.js +1 -0
  177. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/app-update/route-4de9a8b2bd537fc8.js +1 -0
  178. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/attachments/route-4de9a8b2bd537fc8.js +1 -0
  179. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/auth/profile/route-4de9a8b2bd537fc8.js +1 -0
  180. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/comments/route-4de9a8b2bd537fc8.js +1 -0
  181. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/route-4de9a8b2bd537fc8.js +1 -0
  182. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-4de9a8b2bd537fc8.js +1 -0
  183. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/route-4de9a8b2bd537fc8.js +1 -0
  184. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-4de9a8b2bd537fc8.js +1 -0
  185. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-4de9a8b2bd537fc8.js +1 -0
  186. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-4de9a8b2bd537fc8.js +1 -0
  187. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-4de9a8b2bd537fc8.js +1 -0
  188. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-4de9a8b2bd537fc8.js +1 -0
  189. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/code/route-4de9a8b2bd537fc8.js +1 -0
  190. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/route-4de9a8b2bd537fc8.js +1 -0
  191. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridges/route-4de9a8b2bd537fc8.js +1 -0
  192. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/config/route-4de9a8b2bd537fc8.js +1 -0
  193. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/open/route-4de9a8b2bd537fc8.js +1 -0
  194. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/route-4de9a8b2bd537fc8.js +1 -0
  195. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/events/route-4de9a8b2bd537fc8.js +1 -0
  196. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/executor/health/route-4de9a8b2bd537fc8.js +1 -0
  197. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/directory/route-4de9a8b2bd537fc8.js +1 -0
  198. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/pick-directory/route-4de9a8b2bd537fc8.js +1 -0
  199. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/route-4de9a8b2bd537fc8.js +1 -0
  200. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/sync/route-4de9a8b2bd537fc8.js +1 -0
  201. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/repos/route-4de9a8b2bd537fc8.js +1 -0
  202. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/webhook/route-4de9a8b2bd537fc8.js +1 -0
  203. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/boards/route-4de9a8b2bd537fc8.js +1 -0
  204. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/sessions/route-4de9a8b2bd537fc8.js +1 -0
  205. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/notifications/route-4de9a8b2bd537fc8.js +1 -0
  206. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/preferences/route-4de9a8b2bd537fc8.js +1 -0
  207. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/project-notes/file/route-4de9a8b2bd537fc8.js +1 -0
  208. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/project-notes/open/route-4de9a8b2bd537fc8.js +1 -0
  209. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/project-notes/route-4de9a8b2bd537fc8.js +1 -0
  210. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-4de9a8b2bd537fc8.js +1 -0
  211. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-4de9a8b2bd537fc8.js +1 -0
  212. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-4de9a8b2bd537fc8.js +1 -0
  213. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-4de9a8b2bd537fc8.js +1 -0
  214. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-4de9a8b2bd537fc8.js +1 -0
  215. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-4de9a8b2bd537fc8.js +1 -0
  216. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-4de9a8b2bd537fc8.js +1 -0
  217. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-4de9a8b2bd537fc8.js +1 -0
  218. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-4de9a8b2bd537fc8.js +1 -0
  219. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-4de9a8b2bd537fc8.js +1 -0
  220. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-4de9a8b2bd537fc8.js +1 -0
  221. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-4de9a8b2bd537fc8.js +1 -0
  222. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/open/route-4de9a8b2bd537fc8.js +1 -0
  223. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/route-4de9a8b2bd537fc8.js +1 -0
  224. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/setup/route-4de9a8b2bd537fc8.js +1 -0
  225. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/route-4de9a8b2bd537fc8.js +1 -0
  226. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/[id]/route-4de9a8b2bd537fc8.js +1 -0
  227. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/route-4de9a8b2bd537fc8.js +1 -0
  228. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/actions/route-4de9a8b2bd537fc8.js +1 -0
  229. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/archive/route-4de9a8b2bd537fc8.js +1 -0
  230. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/checks/route-4de9a8b2bd537fc8.js +1 -0
  231. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/diff/route-4de9a8b2bd537fc8.js +1 -0
  232. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/files/route-4de9a8b2bd537fc8.js +1 -0
  233. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/keys/route-4de9a8b2bd537fc8.js +1 -0
  234. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/kill/route-4de9a8b2bd537fc8.js +1 -0
  235. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/route-4de9a8b2bd537fc8.js +1 -0
  236. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-4de9a8b2bd537fc8.js +1 -0
  237. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-4de9a8b2bd537fc8.js +1 -0
  238. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/route-4de9a8b2bd537fc8.js +1 -0
  239. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-4de9a8b2bd537fc8.js +1 -0
  240. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/restore/route-4de9a8b2bd537fc8.js +1 -0
  241. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/route-4de9a8b2bd537fc8.js +1 -0
  242. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-4de9a8b2bd537fc8.js +1 -0
  243. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-4de9a8b2bd537fc8.js +1 -0
  244. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-4de9a8b2bd537fc8.js +1 -0
  245. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-4de9a8b2bd537fc8.js +1 -0
  246. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-4de9a8b2bd537fc8.js +1 -0
  247. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-4de9a8b2bd537fc8.js +1 -0
  248. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/route-4de9a8b2bd537fc8.js +1 -0
  249. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/activate/route-4de9a8b2bd537fc8.js +1 -0
  250. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/catalog/route-4de9a8b2bd537fc8.js +1 -0
  251. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/deactivate/route-4de9a8b2bd537fc8.js +1 -0
  252. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/install/route-4de9a8b2bd537fc8.js +1 -0
  253. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/installed/route-4de9a8b2bd537fc8.js +1 -0
  254. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/session-active/route-4de9a8b2bd537fc8.js +1 -0
  255. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/uninstall/route-4de9a8b2bd537fc8.js +1 -0
  256. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/spawn/route-4de9a8b2bd537fc8.js +1 -0
  257. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/branches/route-4de9a8b2bd537fc8.js +1 -0
  258. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/route-4de9a8b2bd537fc8.js +1 -0
  259. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.ps1/route-4de9a8b2bd537fc8.js +1 -0
  260. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.sh/route-4de9a8b2bd537fc8.js +1 -0
  261. package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-45a9fb0483f82080.js +1 -0
  262. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-f04128bf900355e3.js +1 -0
  263. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/hosted/page-4de9a8b2bd537fc8.js +1 -0
  264. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/app-error-4de9a8b2bd537fc8.js +1 -0
  265. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-4de9a8b2bd537fc8.js +1 -0
  266. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/not-found-4de9a8b2bd537fc8.js +1 -0
  267. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-4de9a8b2bd537fc8.js +1 -0
  268. package/web/.next/standalone/packages/web/.next/static/chunks/{webpack-bb0ec96daa1f57a5.js → webpack-4f1ba9bc82453cdd.js} +1 -1
  269. package/web/.next/standalone/packages/web/.next/static/css/422540a30d8d8174.css +1 -0
  270. package/web/.next/standalone/packages/web/.next/static/oOIsREJ3HPI7ahTWJCt7Z/_buildManifest.js +1 -0
  271. package/web/.next/static/chunks/232.57818194757d40c9.js +1 -0
  272. package/web/.next/static/chunks/2432.a0011ea18f71e10f.js +3 -0
  273. package/web/.next/static/chunks/2508.c5f5858a9de8e09f.js +1 -0
  274. package/web/.next/static/chunks/{4443.f8b28d258c2c09a2.js → 4443.997d5dfa8119a933.js} +1 -1
  275. package/web/.next/{standalone/packages/web/.next/static/chunks/5493-22c064a41611d50c.js → static/chunks/5493-25f3b71c5227edc8.js} +1 -1
  276. package/web/.next/static/chunks/6817.416855b6674f7c49.js +1 -0
  277. package/web/.next/static/chunks/{8510-e5474f723f1e449c.js → 8510-4f3803a915184f73.js} +1 -1
  278. package/web/.next/static/chunks/{8607.f538d93ee6398358.js → 8607.c40c5d0302dfb7f3.js} +1 -1
  279. package/web/.next/static/chunks/8987.4e4f633f6953de9e.js +3 -0
  280. package/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-4de9a8b2bd537fc8.js +1 -0
  281. package/web/.next/static/chunks/app/_global-error/page-4de9a8b2bd537fc8.js +1 -0
  282. package/web/.next/static/chunks/app/api/access/route-4de9a8b2bd537fc8.js +1 -0
  283. package/web/.next/static/chunks/app/api/agents/route-4de9a8b2bd537fc8.js +1 -0
  284. package/web/.next/static/chunks/app/api/app-update/route-4de9a8b2bd537fc8.js +1 -0
  285. package/web/.next/static/chunks/app/api/attachments/route-4de9a8b2bd537fc8.js +1 -0
  286. package/web/.next/static/chunks/app/api/auth/profile/route-4de9a8b2bd537fc8.js +1 -0
  287. package/web/.next/static/chunks/app/api/boards/comments/route-4de9a8b2bd537fc8.js +1 -0
  288. package/web/.next/static/chunks/app/api/boards/route-4de9a8b2bd537fc8.js +1 -0
  289. package/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-4de9a8b2bd537fc8.js +1 -0
  290. package/web/.next/static/chunks/app/api/bridge/bridges/route-4de9a8b2bd537fc8.js +1 -0
  291. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-4de9a8b2bd537fc8.js +1 -0
  292. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-4de9a8b2bd537fc8.js +1 -0
  293. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-4de9a8b2bd537fc8.js +1 -0
  294. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-4de9a8b2bd537fc8.js +1 -0
  295. package/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-4de9a8b2bd537fc8.js +1 -0
  296. package/web/.next/static/chunks/app/api/bridge/devices/code/route-4de9a8b2bd537fc8.js +1 -0
  297. package/web/.next/static/chunks/app/api/bridge/devices/route-4de9a8b2bd537fc8.js +1 -0
  298. package/web/.next/static/chunks/app/api/bridges/route-4de9a8b2bd537fc8.js +1 -0
  299. package/web/.next/static/chunks/app/api/config/route-4de9a8b2bd537fc8.js +1 -0
  300. package/web/.next/static/chunks/app/api/context-files/open/route-4de9a8b2bd537fc8.js +1 -0
  301. package/web/.next/static/chunks/app/api/context-files/route-4de9a8b2bd537fc8.js +1 -0
  302. package/web/.next/static/chunks/app/api/events/route-4de9a8b2bd537fc8.js +1 -0
  303. package/web/.next/static/chunks/app/api/executor/health/route-4de9a8b2bd537fc8.js +1 -0
  304. package/web/.next/static/chunks/app/api/filesystem/directory/route-4de9a8b2bd537fc8.js +1 -0
  305. package/web/.next/static/chunks/app/api/filesystem/pick-directory/route-4de9a8b2bd537fc8.js +1 -0
  306. package/web/.next/static/chunks/app/api/github/projects/route-4de9a8b2bd537fc8.js +1 -0
  307. package/web/.next/static/chunks/app/api/github/projects/sync/route-4de9a8b2bd537fc8.js +1 -0
  308. package/web/.next/static/chunks/app/api/github/repos/route-4de9a8b2bd537fc8.js +1 -0
  309. package/web/.next/static/chunks/app/api/github/webhook/route-4de9a8b2bd537fc8.js +1 -0
  310. package/web/.next/static/chunks/app/api/health/boards/route-4de9a8b2bd537fc8.js +1 -0
  311. package/web/.next/static/chunks/app/api/health/sessions/route-4de9a8b2bd537fc8.js +1 -0
  312. package/web/.next/static/chunks/app/api/notifications/route-4de9a8b2bd537fc8.js +1 -0
  313. package/web/.next/static/chunks/app/api/preferences/route-4de9a8b2bd537fc8.js +1 -0
  314. package/web/.next/static/chunks/app/api/project-notes/file/route-4de9a8b2bd537fc8.js +1 -0
  315. package/web/.next/static/chunks/app/api/project-notes/open/route-4de9a8b2bd537fc8.js +1 -0
  316. package/web/.next/static/chunks/app/api/project-notes/route-4de9a8b2bd537fc8.js +1 -0
  317. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-4de9a8b2bd537fc8.js +1 -0
  318. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-4de9a8b2bd537fc8.js +1 -0
  319. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-4de9a8b2bd537fc8.js +1 -0
  320. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-4de9a8b2bd537fc8.js +1 -0
  321. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-4de9a8b2bd537fc8.js +1 -0
  322. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-4de9a8b2bd537fc8.js +1 -0
  323. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-4de9a8b2bd537fc8.js +1 -0
  324. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-4de9a8b2bd537fc8.js +1 -0
  325. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-4de9a8b2bd537fc8.js +1 -0
  326. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-4de9a8b2bd537fc8.js +1 -0
  327. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-4de9a8b2bd537fc8.js +1 -0
  328. package/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-4de9a8b2bd537fc8.js +1 -0
  329. package/web/.next/static/chunks/app/api/projects/[id]/open/route-4de9a8b2bd537fc8.js +1 -0
  330. package/web/.next/static/chunks/app/api/projects/[id]/route-4de9a8b2bd537fc8.js +1 -0
  331. package/web/.next/static/chunks/app/api/projects/[id]/setup/route-4de9a8b2bd537fc8.js +1 -0
  332. package/web/.next/static/chunks/app/api/projects/route-4de9a8b2bd537fc8.js +1 -0
  333. package/web/.next/static/chunks/app/api/repositories/[id]/route-4de9a8b2bd537fc8.js +1 -0
  334. package/web/.next/static/chunks/app/api/repositories/route-4de9a8b2bd537fc8.js +1 -0
  335. package/web/.next/static/chunks/app/api/sessions/[id]/actions/route-4de9a8b2bd537fc8.js +1 -0
  336. package/web/.next/static/chunks/app/api/sessions/[id]/archive/route-4de9a8b2bd537fc8.js +1 -0
  337. package/web/.next/static/chunks/app/api/sessions/[id]/checks/route-4de9a8b2bd537fc8.js +1 -0
  338. package/web/.next/static/chunks/app/api/sessions/[id]/diff/route-4de9a8b2bd537fc8.js +1 -0
  339. package/web/.next/static/chunks/app/api/sessions/[id]/files/route-4de9a8b2bd537fc8.js +1 -0
  340. package/web/.next/static/chunks/app/api/sessions/[id]/keys/route-4de9a8b2bd537fc8.js +1 -0
  341. package/web/.next/static/chunks/app/api/sessions/[id]/kill/route-4de9a8b2bd537fc8.js +1 -0
  342. package/web/.next/static/chunks/app/api/sessions/[id]/output/route-4de9a8b2bd537fc8.js +1 -0
  343. package/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-4de9a8b2bd537fc8.js +1 -0
  344. package/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-4de9a8b2bd537fc8.js +1 -0
  345. package/web/.next/static/chunks/app/api/sessions/[id]/preview/route-4de9a8b2bd537fc8.js +1 -0
  346. package/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-4de9a8b2bd537fc8.js +1 -0
  347. package/web/.next/static/chunks/app/api/sessions/[id]/restore/route-4de9a8b2bd537fc8.js +1 -0
  348. package/web/.next/static/chunks/app/api/sessions/[id]/route-4de9a8b2bd537fc8.js +1 -0
  349. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-4de9a8b2bd537fc8.js +1 -0
  350. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-4de9a8b2bd537fc8.js +1 -0
  351. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-4de9a8b2bd537fc8.js +1 -0
  352. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-4de9a8b2bd537fc8.js +1 -0
  353. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-4de9a8b2bd537fc8.js +1 -0
  354. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-4de9a8b2bd537fc8.js +1 -0
  355. package/web/.next/static/chunks/app/api/sessions/route-4de9a8b2bd537fc8.js +1 -0
  356. package/web/.next/static/chunks/app/api/skills/activate/route-4de9a8b2bd537fc8.js +1 -0
  357. package/web/.next/static/chunks/app/api/skills/catalog/route-4de9a8b2bd537fc8.js +1 -0
  358. package/web/.next/static/chunks/app/api/skills/deactivate/route-4de9a8b2bd537fc8.js +1 -0
  359. package/web/.next/static/chunks/app/api/skills/install/route-4de9a8b2bd537fc8.js +1 -0
  360. package/web/.next/static/chunks/app/api/skills/installed/route-4de9a8b2bd537fc8.js +1 -0
  361. package/web/.next/static/chunks/app/api/skills/session-active/route-4de9a8b2bd537fc8.js +1 -0
  362. package/web/.next/static/chunks/app/api/skills/uninstall/route-4de9a8b2bd537fc8.js +1 -0
  363. package/web/.next/static/chunks/app/api/spawn/route-4de9a8b2bd537fc8.js +1 -0
  364. package/web/.next/static/chunks/app/api/workspaces/branches/route-4de9a8b2bd537fc8.js +1 -0
  365. package/web/.next/static/chunks/app/api/workspaces/route-4de9a8b2bd537fc8.js +1 -0
  366. package/web/.next/static/chunks/app/bridge/install.ps1/route-4de9a8b2bd537fc8.js +1 -0
  367. package/web/.next/static/chunks/app/bridge/install.sh/route-4de9a8b2bd537fc8.js +1 -0
  368. package/web/.next/static/chunks/app/layout-45a9fb0483f82080.js +1 -0
  369. package/web/.next/static/chunks/app/page-f04128bf900355e3.js +1 -0
  370. package/web/.next/static/chunks/app/sign-in/hosted/page-4de9a8b2bd537fc8.js +1 -0
  371. package/web/.next/static/chunks/next/dist/client/components/builtin/app-error-4de9a8b2bd537fc8.js +1 -0
  372. package/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-4de9a8b2bd537fc8.js +1 -0
  373. package/web/.next/static/chunks/next/dist/client/components/builtin/not-found-4de9a8b2bd537fc8.js +1 -0
  374. package/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-4de9a8b2bd537fc8.js +1 -0
  375. package/web/.next/static/chunks/{webpack-bb0ec96daa1f57a5.js → webpack-4f1ba9bc82453cdd.js} +1 -1
  376. package/web/.next/static/css/422540a30d8d8174.css +1 -0
  377. package/web/.next/static/oOIsREJ3HPI7ahTWJCt7Z/_buildManifest.js +1 -0
  378. package/web/.next/standalone/packages/web/.next/server/chunks/1490.js +0 -1
  379. package/web/.next/standalone/packages/web/.next/server/chunks/1564.js +0 -1
  380. package/web/.next/standalone/packages/web/.next/server/chunks/3990.js +0 -1
  381. package/web/.next/standalone/packages/web/.next/server/chunks/468.js +0 -1
  382. package/web/.next/standalone/packages/web/.next/server/chunks/4737.js +0 -1
  383. package/web/.next/standalone/packages/web/.next/server/chunks/5068.js +0 -1
  384. package/web/.next/standalone/packages/web/.next/server/chunks/6054.js +0 -1
  385. package/web/.next/standalone/packages/web/.next/static/chunks/2261.a4a22edc2699e706.js +0 -3
  386. package/web/.next/standalone/packages/web/.next/static/chunks/2651.dcd5e794d7400def.js +0 -1
  387. package/web/.next/standalone/packages/web/.next/static/chunks/474.0468442a7b5947e9.js +0 -1
  388. package/web/.next/standalone/packages/web/.next/static/chunks/8613.5c25e343a523ace3.js +0 -1
  389. package/web/.next/standalone/packages/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-da63d844222da45c.js +0 -1
  390. package/web/.next/standalone/packages/web/.next/static/chunks/app/_global-error/page-da63d844222da45c.js +0 -1
  391. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/access/route-da63d844222da45c.js +0 -1
  392. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/agents/route-da63d844222da45c.js +0 -1
  393. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/app-update/route-da63d844222da45c.js +0 -1
  394. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/attachments/route-da63d844222da45c.js +0 -1
  395. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/auth/profile/route-da63d844222da45c.js +0 -1
  396. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/comments/route-da63d844222da45c.js +0 -1
  397. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/route-da63d844222da45c.js +0 -1
  398. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-da63d844222da45c.js +0 -1
  399. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/route-da63d844222da45c.js +0 -1
  400. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-da63d844222da45c.js +0 -1
  401. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-da63d844222da45c.js +0 -1
  402. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-da63d844222da45c.js +0 -1
  403. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-da63d844222da45c.js +0 -1
  404. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-da63d844222da45c.js +0 -1
  405. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/code/route-da63d844222da45c.js +0 -1
  406. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/route-da63d844222da45c.js +0 -1
  407. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridges/route-da63d844222da45c.js +0 -1
  408. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/config/route-da63d844222da45c.js +0 -1
  409. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/open/route-da63d844222da45c.js +0 -1
  410. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/route-da63d844222da45c.js +0 -1
  411. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/events/route-da63d844222da45c.js +0 -1
  412. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/executor/health/route-da63d844222da45c.js +0 -1
  413. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/directory/route-da63d844222da45c.js +0 -1
  414. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/pick-directory/route-da63d844222da45c.js +0 -1
  415. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/route-da63d844222da45c.js +0 -1
  416. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/sync/route-da63d844222da45c.js +0 -1
  417. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/repos/route-da63d844222da45c.js +0 -1
  418. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/webhook/route-da63d844222da45c.js +0 -1
  419. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/boards/route-da63d844222da45c.js +0 -1
  420. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/sessions/route-da63d844222da45c.js +0 -1
  421. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/notifications/route-da63d844222da45c.js +0 -1
  422. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/preferences/route-da63d844222da45c.js +0 -1
  423. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-da63d844222da45c.js +0 -1
  424. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-da63d844222da45c.js +0 -1
  425. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-da63d844222da45c.js +0 -1
  426. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-da63d844222da45c.js +0 -1
  427. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-da63d844222da45c.js +0 -1
  428. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-da63d844222da45c.js +0 -1
  429. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-da63d844222da45c.js +0 -1
  430. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-da63d844222da45c.js +0 -1
  431. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-da63d844222da45c.js +0 -1
  432. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-da63d844222da45c.js +0 -1
  433. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-da63d844222da45c.js +0 -1
  434. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-da63d844222da45c.js +0 -1
  435. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/open/route-da63d844222da45c.js +0 -1
  436. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/route-da63d844222da45c.js +0 -1
  437. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/setup/route-da63d844222da45c.js +0 -1
  438. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/route-da63d844222da45c.js +0 -1
  439. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/[id]/route-da63d844222da45c.js +0 -1
  440. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/route-da63d844222da45c.js +0 -1
  441. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/actions/route-da63d844222da45c.js +0 -1
  442. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/archive/route-da63d844222da45c.js +0 -1
  443. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/checks/route-da63d844222da45c.js +0 -1
  444. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/diff/route-da63d844222da45c.js +0 -1
  445. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/files/route-da63d844222da45c.js +0 -1
  446. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/keys/route-da63d844222da45c.js +0 -1
  447. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/kill/route-da63d844222da45c.js +0 -1
  448. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/route-da63d844222da45c.js +0 -1
  449. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-da63d844222da45c.js +0 -1
  450. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-da63d844222da45c.js +0 -1
  451. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/route-da63d844222da45c.js +0 -1
  452. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-da63d844222da45c.js +0 -1
  453. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/restore/route-da63d844222da45c.js +0 -1
  454. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/route-da63d844222da45c.js +0 -1
  455. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-da63d844222da45c.js +0 -1
  456. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-da63d844222da45c.js +0 -1
  457. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-da63d844222da45c.js +0 -1
  458. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-da63d844222da45c.js +0 -1
  459. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-da63d844222da45c.js +0 -1
  460. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-da63d844222da45c.js +0 -1
  461. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/route-da63d844222da45c.js +0 -1
  462. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/activate/route-da63d844222da45c.js +0 -1
  463. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/catalog/route-da63d844222da45c.js +0 -1
  464. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/deactivate/route-da63d844222da45c.js +0 -1
  465. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/install/route-da63d844222da45c.js +0 -1
  466. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/installed/route-da63d844222da45c.js +0 -1
  467. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/session-active/route-da63d844222da45c.js +0 -1
  468. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/uninstall/route-da63d844222da45c.js +0 -1
  469. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/spawn/route-da63d844222da45c.js +0 -1
  470. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/branches/route-da63d844222da45c.js +0 -1
  471. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/route-da63d844222da45c.js +0 -1
  472. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.ps1/route-da63d844222da45c.js +0 -1
  473. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.sh/route-da63d844222da45c.js +0 -1
  474. package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-f445547f9ec69204.js +0 -1
  475. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-970687afb211d9f8.js +0 -1
  476. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/hosted/page-da63d844222da45c.js +0 -1
  477. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/app-error-da63d844222da45c.js +0 -1
  478. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-da63d844222da45c.js +0 -1
  479. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/not-found-da63d844222da45c.js +0 -1
  480. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-da63d844222da45c.js +0 -1
  481. package/web/.next/standalone/packages/web/.next/static/css/186566065c214a57.css +0 -1
  482. package/web/.next/standalone/packages/web/.next/static/ejPUSGu-biGfUY_gITpZ0/_buildManifest.js +0 -1
  483. package/web/.next/static/chunks/2261.a4a22edc2699e706.js +0 -3
  484. package/web/.next/static/chunks/2651.dcd5e794d7400def.js +0 -1
  485. package/web/.next/static/chunks/474.0468442a7b5947e9.js +0 -1
  486. package/web/.next/static/chunks/8613.5c25e343a523ace3.js +0 -1
  487. package/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-da63d844222da45c.js +0 -1
  488. package/web/.next/static/chunks/app/_global-error/page-da63d844222da45c.js +0 -1
  489. package/web/.next/static/chunks/app/api/access/route-da63d844222da45c.js +0 -1
  490. package/web/.next/static/chunks/app/api/agents/route-da63d844222da45c.js +0 -1
  491. package/web/.next/static/chunks/app/api/app-update/route-da63d844222da45c.js +0 -1
  492. package/web/.next/static/chunks/app/api/attachments/route-da63d844222da45c.js +0 -1
  493. package/web/.next/static/chunks/app/api/auth/profile/route-da63d844222da45c.js +0 -1
  494. package/web/.next/static/chunks/app/api/boards/comments/route-da63d844222da45c.js +0 -1
  495. package/web/.next/static/chunks/app/api/boards/route-da63d844222da45c.js +0 -1
  496. package/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-da63d844222da45c.js +0 -1
  497. package/web/.next/static/chunks/app/api/bridge/bridges/route-da63d844222da45c.js +0 -1
  498. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-da63d844222da45c.js +0 -1
  499. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-da63d844222da45c.js +0 -1
  500. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-da63d844222da45c.js +0 -1
  501. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-da63d844222da45c.js +0 -1
  502. package/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-da63d844222da45c.js +0 -1
  503. package/web/.next/static/chunks/app/api/bridge/devices/code/route-da63d844222da45c.js +0 -1
  504. package/web/.next/static/chunks/app/api/bridge/devices/route-da63d844222da45c.js +0 -1
  505. package/web/.next/static/chunks/app/api/bridges/route-da63d844222da45c.js +0 -1
  506. package/web/.next/static/chunks/app/api/config/route-da63d844222da45c.js +0 -1
  507. package/web/.next/static/chunks/app/api/context-files/open/route-da63d844222da45c.js +0 -1
  508. package/web/.next/static/chunks/app/api/context-files/route-da63d844222da45c.js +0 -1
  509. package/web/.next/static/chunks/app/api/events/route-da63d844222da45c.js +0 -1
  510. package/web/.next/static/chunks/app/api/executor/health/route-da63d844222da45c.js +0 -1
  511. package/web/.next/static/chunks/app/api/filesystem/directory/route-da63d844222da45c.js +0 -1
  512. package/web/.next/static/chunks/app/api/filesystem/pick-directory/route-da63d844222da45c.js +0 -1
  513. package/web/.next/static/chunks/app/api/github/projects/route-da63d844222da45c.js +0 -1
  514. package/web/.next/static/chunks/app/api/github/projects/sync/route-da63d844222da45c.js +0 -1
  515. package/web/.next/static/chunks/app/api/github/repos/route-da63d844222da45c.js +0 -1
  516. package/web/.next/static/chunks/app/api/github/webhook/route-da63d844222da45c.js +0 -1
  517. package/web/.next/static/chunks/app/api/health/boards/route-da63d844222da45c.js +0 -1
  518. package/web/.next/static/chunks/app/api/health/sessions/route-da63d844222da45c.js +0 -1
  519. package/web/.next/static/chunks/app/api/notifications/route-da63d844222da45c.js +0 -1
  520. package/web/.next/static/chunks/app/api/preferences/route-da63d844222da45c.js +0 -1
  521. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-da63d844222da45c.js +0 -1
  522. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-da63d844222da45c.js +0 -1
  523. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-da63d844222da45c.js +0 -1
  524. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-da63d844222da45c.js +0 -1
  525. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-da63d844222da45c.js +0 -1
  526. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-da63d844222da45c.js +0 -1
  527. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-da63d844222da45c.js +0 -1
  528. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-da63d844222da45c.js +0 -1
  529. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-da63d844222da45c.js +0 -1
  530. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-da63d844222da45c.js +0 -1
  531. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-da63d844222da45c.js +0 -1
  532. package/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-da63d844222da45c.js +0 -1
  533. package/web/.next/static/chunks/app/api/projects/[id]/open/route-da63d844222da45c.js +0 -1
  534. package/web/.next/static/chunks/app/api/projects/[id]/route-da63d844222da45c.js +0 -1
  535. package/web/.next/static/chunks/app/api/projects/[id]/setup/route-da63d844222da45c.js +0 -1
  536. package/web/.next/static/chunks/app/api/projects/route-da63d844222da45c.js +0 -1
  537. package/web/.next/static/chunks/app/api/repositories/[id]/route-da63d844222da45c.js +0 -1
  538. package/web/.next/static/chunks/app/api/repositories/route-da63d844222da45c.js +0 -1
  539. package/web/.next/static/chunks/app/api/sessions/[id]/actions/route-da63d844222da45c.js +0 -1
  540. package/web/.next/static/chunks/app/api/sessions/[id]/archive/route-da63d844222da45c.js +0 -1
  541. package/web/.next/static/chunks/app/api/sessions/[id]/checks/route-da63d844222da45c.js +0 -1
  542. package/web/.next/static/chunks/app/api/sessions/[id]/diff/route-da63d844222da45c.js +0 -1
  543. package/web/.next/static/chunks/app/api/sessions/[id]/files/route-da63d844222da45c.js +0 -1
  544. package/web/.next/static/chunks/app/api/sessions/[id]/keys/route-da63d844222da45c.js +0 -1
  545. package/web/.next/static/chunks/app/api/sessions/[id]/kill/route-da63d844222da45c.js +0 -1
  546. package/web/.next/static/chunks/app/api/sessions/[id]/output/route-da63d844222da45c.js +0 -1
  547. package/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-da63d844222da45c.js +0 -1
  548. package/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-da63d844222da45c.js +0 -1
  549. package/web/.next/static/chunks/app/api/sessions/[id]/preview/route-da63d844222da45c.js +0 -1
  550. package/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-da63d844222da45c.js +0 -1
  551. package/web/.next/static/chunks/app/api/sessions/[id]/restore/route-da63d844222da45c.js +0 -1
  552. package/web/.next/static/chunks/app/api/sessions/[id]/route-da63d844222da45c.js +0 -1
  553. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-da63d844222da45c.js +0 -1
  554. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-da63d844222da45c.js +0 -1
  555. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-da63d844222da45c.js +0 -1
  556. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-da63d844222da45c.js +0 -1
  557. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-da63d844222da45c.js +0 -1
  558. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-da63d844222da45c.js +0 -1
  559. package/web/.next/static/chunks/app/api/sessions/route-da63d844222da45c.js +0 -1
  560. package/web/.next/static/chunks/app/api/skills/activate/route-da63d844222da45c.js +0 -1
  561. package/web/.next/static/chunks/app/api/skills/catalog/route-da63d844222da45c.js +0 -1
  562. package/web/.next/static/chunks/app/api/skills/deactivate/route-da63d844222da45c.js +0 -1
  563. package/web/.next/static/chunks/app/api/skills/install/route-da63d844222da45c.js +0 -1
  564. package/web/.next/static/chunks/app/api/skills/installed/route-da63d844222da45c.js +0 -1
  565. package/web/.next/static/chunks/app/api/skills/session-active/route-da63d844222da45c.js +0 -1
  566. package/web/.next/static/chunks/app/api/skills/uninstall/route-da63d844222da45c.js +0 -1
  567. package/web/.next/static/chunks/app/api/spawn/route-da63d844222da45c.js +0 -1
  568. package/web/.next/static/chunks/app/api/workspaces/branches/route-da63d844222da45c.js +0 -1
  569. package/web/.next/static/chunks/app/api/workspaces/route-da63d844222da45c.js +0 -1
  570. package/web/.next/static/chunks/app/bridge/install.ps1/route-da63d844222da45c.js +0 -1
  571. package/web/.next/static/chunks/app/bridge/install.sh/route-da63d844222da45c.js +0 -1
  572. package/web/.next/static/chunks/app/layout-f445547f9ec69204.js +0 -1
  573. package/web/.next/static/chunks/app/page-970687afb211d9f8.js +0 -1
  574. package/web/.next/static/chunks/app/sign-in/hosted/page-da63d844222da45c.js +0 -1
  575. package/web/.next/static/chunks/next/dist/client/components/builtin/app-error-da63d844222da45c.js +0 -1
  576. package/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-da63d844222da45c.js +0 -1
  577. package/web/.next/static/chunks/next/dist/client/components/builtin/not-found-da63d844222da45c.js +0 -1
  578. package/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-da63d844222da45c.js +0 -1
  579. package/web/.next/static/css/186566065c214a57.css +0 -1
  580. package/web/.next/static/ejPUSGu-biGfUY_gITpZ0/_buildManifest.js +0 -1
  581. /package/web/.next/standalone/packages/web/.next/static/{ejPUSGu-biGfUY_gITpZ0 → oOIsREJ3HPI7ahTWJCt7Z}/_ssgManifest.js +0 -0
  582. /package/web/.next/static/{ejPUSGu-biGfUY_gITpZ0 → oOIsREJ3HPI7ahTWJCt7Z}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- "use strict";exports.id=1564,exports.ids=[1564],exports.modules={21564:(a,b,c)=>{c.r(b),c.d(b,{SessionPreview:()=>aF});var d=c(92692),e=c(71277),f=c(13636),g=c(37303);let h=(0,g.A)("boxes",[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]]);var i=c(7071);let j=(0,g.A)("file-braces-corner",[["path",{d:"M14 22h4a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v6",key:"14cnrg"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M5 14a1 1 0 0 0-1 1v2a1 1 0 0 1-1 1 1 1 0 0 1 1 1v2a1 1 0 0 0 1 1",key:"sr0ebq"}],["path",{d:"M9 22a1 1 0 0 0 1-1v-2a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-2a1 1 0 0 0-1-1",key:"w793db"}]]),k=(0,g.A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);var l=c(52404),m=c(64583),n=c(76680);let o=(0,g.A)("waypoints",[["path",{d:"m10.586 5.414-5.172 5.172",key:"4mc350"}],["path",{d:"m18.586 13.414-5.172 5.172",key:"8c96vv"}],["path",{d:"M6 12h12",key:"8npq4p"}],["circle",{cx:"12",cy:"20",r:"2",key:"144qzu"}],["circle",{cx:"12",cy:"4",r:"2",key:"muu5ef"}],["circle",{cx:"20",cy:"12",r:"2",key:"1xzzfp"}],["circle",{cx:"4",cy:"12",r:"2",key:"1hvhnz"}]]),p=(0,g.A)("mouse-pointer-click",[["path",{d:"M14 4.1 12 6",key:"ita8i4"}],["path",{d:"m5.1 8-2.9-.8",key:"1go3kf"}],["path",{d:"m6 12-1.9 2",key:"mnht97"}],["path",{d:"M7.2 2.2 8 5.1",key:"1cfko1"}],["path",{d:"M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z",key:"s0h3yz"}]]);var q=c(32792);let r=(0,g.A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);var s=c(75185),t=c(69368);let u=(0,g.A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);var v=c(48582),w=c(1071),x=c(5707),y=c(64308),z=c(63660),A=c(11256),B=c(87108),C=c(8370),D=c(97229),E=c(74508),F="ScrollArea",[G,H]=(0,z.A)(F),[I,J]=G(F),K=e.forwardRef((a,b)=>{let{__scopeScrollArea:c,type:f="hover",dir:g,scrollHideDelay:h=600,...i}=a,[j,k]=e.useState(null),[l,m]=e.useState(null),[n,o]=e.useState(null),[p,q]=e.useState(null),[r,s]=e.useState(null),[t,u]=e.useState(0),[v,w]=e.useState(0),[y,z]=e.useState(!1),[B,D]=e.useState(!1),E=(0,A.s)(b,a=>k(a)),F=(0,C.jH)(g);return(0,d.jsx)(I,{scope:c,type:f,dir:F,scrollHideDelay:h,scrollArea:j,viewport:l,onViewportChange:m,content:n,onContentChange:o,scrollbarX:p,onScrollbarXChange:q,scrollbarXEnabled:y,onScrollbarXEnabledChange:z,scrollbarY:r,onScrollbarYChange:s,scrollbarYEnabled:B,onScrollbarYEnabledChange:D,onCornerWidthChange:u,onCornerHeightChange:w,children:(0,d.jsx)(x.sG.div,{dir:F,...i,ref:E,style:{position:"relative","--radix-scroll-area-corner-width":t+"px","--radix-scroll-area-corner-height":v+"px",...a.style}})})});K.displayName=F;var L="ScrollAreaViewport",M=e.forwardRef((a,b)=>{let{__scopeScrollArea:c,children:f,nonce:g,...h}=a,i=J(L,c),j=e.useRef(null),k=(0,A.s)(b,j,i.onViewportChange);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:g}),(0,d.jsx)(x.sG.div,{"data-radix-scroll-area-viewport":"",...h,ref:k,style:{overflowX:i.scrollbarXEnabled?"scroll":"hidden",overflowY:i.scrollbarYEnabled?"scroll":"hidden",...a.style},children:(0,d.jsx)("div",{ref:i.onContentChange,style:{minWidth:"100%",display:"table"},children:f})})]})});M.displayName=L;var N="ScrollAreaScrollbar",O=e.forwardRef((a,b)=>{let{forceMount:c,...f}=a,g=J(N,a.__scopeScrollArea),{onScrollbarXEnabledChange:h,onScrollbarYEnabledChange:i}=g,j="horizontal"===a.orientation;return e.useEffect(()=>(j?h(!0):i(!0),()=>{j?h(!1):i(!1)}),[j,h,i]),"hover"===g.type?(0,d.jsx)(P,{...f,ref:b,forceMount:c}):"scroll"===g.type?(0,d.jsx)(Q,{...f,ref:b,forceMount:c}):"auto"===g.type?(0,d.jsx)(R,{...f,ref:b,forceMount:c}):"always"===g.type?(0,d.jsx)(S,{...f,ref:b}):null});O.displayName=N;var P=e.forwardRef((a,b)=>{let{forceMount:c,...f}=a,g=J(N,a.__scopeScrollArea),[h,i]=e.useState(!1);return e.useEffect(()=>{let a=g.scrollArea,b=0;if(a){let c=()=>{window.clearTimeout(b),i(!0)},d=()=>{b=window.setTimeout(()=>i(!1),g.scrollHideDelay)};return a.addEventListener("pointerenter",c),a.addEventListener("pointerleave",d),()=>{window.clearTimeout(b),a.removeEventListener("pointerenter",c),a.removeEventListener("pointerleave",d)}}},[g.scrollArea,g.scrollHideDelay]),(0,d.jsx)(y.C,{present:c||h,children:(0,d.jsx)(R,{"data-state":h?"visible":"hidden",...f,ref:b})})}),Q=e.forwardRef((a,b)=>{var c;let{forceMount:f,...g}=a,h=J(N,a.__scopeScrollArea),i="horizontal"===a.orientation,j=ai(()=>l("SCROLL_END"),100),[k,l]=(c={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},e.useReducer((a,b)=>c[a][b]??a,"hidden"));return e.useEffect(()=>{if("idle"===k){let a=window.setTimeout(()=>l("HIDE"),h.scrollHideDelay);return()=>window.clearTimeout(a)}},[k,h.scrollHideDelay,l]),e.useEffect(()=>{let a=h.viewport,b=i?"scrollLeft":"scrollTop";if(a){let c=a[b],d=()=>{let d=a[b];c!==d&&(l("SCROLL"),j()),c=d};return a.addEventListener("scroll",d),()=>a.removeEventListener("scroll",d)}},[h.viewport,i,l,j]),(0,d.jsx)(y.C,{present:f||"hidden"!==k,children:(0,d.jsx)(S,{"data-state":"hidden"===k?"hidden":"visible",...g,ref:b,onPointerEnter:(0,E.mK)(a.onPointerEnter,()=>l("POINTER_ENTER")),onPointerLeave:(0,E.mK)(a.onPointerLeave,()=>l("POINTER_LEAVE"))})})}),R=e.forwardRef((a,b)=>{let c=J(N,a.__scopeScrollArea),{forceMount:f,...g}=a,[h,i]=e.useState(!1),j="horizontal"===a.orientation,k=ai(()=>{if(c.viewport){let a=c.viewport.offsetWidth<c.viewport.scrollWidth,b=c.viewport.offsetHeight<c.viewport.scrollHeight;i(j?a:b)}},10);return aj(c.viewport,k),aj(c.content,k),(0,d.jsx)(y.C,{present:f||h,children:(0,d.jsx)(S,{"data-state":h?"visible":"hidden",...g,ref:b})})}),S=e.forwardRef((a,b)=>{let{orientation:c="vertical",...f}=a,g=J(N,a.__scopeScrollArea),h=e.useRef(null),i=e.useRef(0),[j,k]=e.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=ad(j.viewport,j.content),m={...f,sizes:j,onSizesChange:k,hasThumb:!!(l>0&&l<1),onThumbChange:a=>h.current=a,onThumbPointerUp:()=>i.current=0,onThumbPointerDown:a=>i.current=a};function n(a,b){return function(a,b,c,d="ltr"){let e=ae(c),f=b||e/2,g=c.scrollbar.paddingStart+f,h=c.scrollbar.size-c.scrollbar.paddingEnd-(e-f),i=c.content-c.viewport;return ag([g,h],"ltr"===d?[0,i]:[-1*i,0])(a)}(a,i.current,j,b)}return"horizontal"===c?(0,d.jsx)(T,{...m,ref:b,onThumbPositionChange:()=>{if(g.viewport&&h.current){let a=af(g.viewport.scrollLeft,j,g.dir);h.current.style.transform=`translate3d(${a}px, 0, 0)`}},onWheelScroll:a=>{g.viewport&&(g.viewport.scrollLeft=a)},onDragScroll:a=>{g.viewport&&(g.viewport.scrollLeft=n(a,g.dir))}}):"vertical"===c?(0,d.jsx)(U,{...m,ref:b,onThumbPositionChange:()=>{if(g.viewport&&h.current){let a=af(g.viewport.scrollTop,j);h.current.style.transform=`translate3d(0, ${a}px, 0)`}},onWheelScroll:a=>{g.viewport&&(g.viewport.scrollTop=a)},onDragScroll:a=>{g.viewport&&(g.viewport.scrollTop=n(a))}}):null}),T=e.forwardRef((a,b)=>{let{sizes:c,onSizesChange:f,...g}=a,h=J(N,a.__scopeScrollArea),[i,j]=e.useState(),k=e.useRef(null),l=(0,A.s)(b,k,h.onScrollbarXChange);return e.useEffect(()=>{k.current&&j(getComputedStyle(k.current))},[k]),(0,d.jsx)(X,{"data-orientation":"horizontal",...g,ref:l,sizes:c,style:{bottom:0,left:"rtl"===h.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===h.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":ae(c)+"px",...a.style},onThumbPointerDown:b=>a.onThumbPointerDown(b.x),onDragScroll:b=>a.onDragScroll(b.x),onWheelScroll:(b,c)=>{if(h.viewport){var d,e;let f=h.viewport.scrollLeft+b.deltaX;a.onWheelScroll(f),d=f,e=c,d>0&&d<e&&b.preventDefault()}},onResize:()=>{k.current&&h.viewport&&i&&f({content:h.viewport.scrollWidth,viewport:h.viewport.offsetWidth,scrollbar:{size:k.current.clientWidth,paddingStart:ac(i.paddingLeft),paddingEnd:ac(i.paddingRight)}})}})}),U=e.forwardRef((a,b)=>{let{sizes:c,onSizesChange:f,...g}=a,h=J(N,a.__scopeScrollArea),[i,j]=e.useState(),k=e.useRef(null),l=(0,A.s)(b,k,h.onScrollbarYChange);return e.useEffect(()=>{k.current&&j(getComputedStyle(k.current))},[k]),(0,d.jsx)(X,{"data-orientation":"vertical",...g,ref:l,sizes:c,style:{top:0,right:"ltr"===h.dir?0:void 0,left:"rtl"===h.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":ae(c)+"px",...a.style},onThumbPointerDown:b=>a.onThumbPointerDown(b.y),onDragScroll:b=>a.onDragScroll(b.y),onWheelScroll:(b,c)=>{if(h.viewport){var d,e;let f=h.viewport.scrollTop+b.deltaY;a.onWheelScroll(f),d=f,e=c,d>0&&d<e&&b.preventDefault()}},onResize:()=>{k.current&&h.viewport&&i&&f({content:h.viewport.scrollHeight,viewport:h.viewport.offsetHeight,scrollbar:{size:k.current.clientHeight,paddingStart:ac(i.paddingTop),paddingEnd:ac(i.paddingBottom)}})}})}),[V,W]=G(N),X=e.forwardRef((a,b)=>{let{__scopeScrollArea:c,sizes:f,hasThumb:g,onThumbChange:h,onThumbPointerUp:i,onThumbPointerDown:j,onThumbPositionChange:k,onDragScroll:l,onWheelScroll:m,onResize:n,...o}=a,p=J(N,c),[q,r]=e.useState(null),s=(0,A.s)(b,a=>r(a)),t=e.useRef(null),u=e.useRef(""),v=p.viewport,w=f.content-f.viewport,y=(0,B.c)(m),z=(0,B.c)(k),C=ai(n,10);function D(a){t.current&&l({x:a.clientX-t.current.left,y:a.clientY-t.current.top})}return e.useEffect(()=>{let a=a=>{let b=a.target;q?.contains(b)&&y(a,w)};return document.addEventListener("wheel",a,{passive:!1}),()=>document.removeEventListener("wheel",a,{passive:!1})},[v,q,w,y]),e.useEffect(z,[f,z]),aj(q,C),aj(p.content,C),(0,d.jsx)(V,{scope:c,scrollbar:q,hasThumb:g,onThumbChange:(0,B.c)(h),onThumbPointerUp:(0,B.c)(i),onThumbPositionChange:z,onThumbPointerDown:(0,B.c)(j),children:(0,d.jsx)(x.sG.div,{...o,ref:s,style:{position:"absolute",...o.style},onPointerDown:(0,E.mK)(a.onPointerDown,a=>{0===a.button&&(a.target.setPointerCapture(a.pointerId),t.current=q.getBoundingClientRect(),u.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",p.viewport&&(p.viewport.style.scrollBehavior="auto"),D(a))}),onPointerMove:(0,E.mK)(a.onPointerMove,D),onPointerUp:(0,E.mK)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),document.body.style.webkitUserSelect=u.current,p.viewport&&(p.viewport.style.scrollBehavior=""),t.current=null})})})}),Y="ScrollAreaThumb",Z=e.forwardRef((a,b)=>{let{forceMount:c,...e}=a,f=W(Y,a.__scopeScrollArea);return(0,d.jsx)(y.C,{present:c||f.hasThumb,children:(0,d.jsx)($,{ref:b,...e})})}),$=e.forwardRef((a,b)=>{let{__scopeScrollArea:c,style:f,...g}=a,h=J(Y,c),i=W(Y,c),{onThumbPositionChange:j}=i,k=(0,A.s)(b,a=>i.onThumbChange(a)),l=e.useRef(void 0),m=ai(()=>{l.current&&(l.current(),l.current=void 0)},100);return e.useEffect(()=>{let a=h.viewport;if(a){let b=()=>{m(),l.current||(l.current=ah(a,j),j())};return j(),a.addEventListener("scroll",b),()=>a.removeEventListener("scroll",b)}},[h.viewport,m,j]),(0,d.jsx)(x.sG.div,{"data-state":i.hasThumb?"visible":"hidden",...g,ref:k,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...f},onPointerDownCapture:(0,E.mK)(a.onPointerDownCapture,a=>{let b=a.target.getBoundingClientRect(),c=a.clientX-b.left,d=a.clientY-b.top;i.onThumbPointerDown({x:c,y:d})}),onPointerUp:(0,E.mK)(a.onPointerUp,i.onThumbPointerUp)})});Z.displayName=Y;var _="ScrollAreaCorner",aa=e.forwardRef((a,b)=>{let c=J(_,a.__scopeScrollArea),e=!!(c.scrollbarX&&c.scrollbarY);return"scroll"!==c.type&&e?(0,d.jsx)(ab,{...a,ref:b}):null});aa.displayName=_;var ab=e.forwardRef((a,b)=>{let{__scopeScrollArea:c,...f}=a,g=J(_,c),[h,i]=e.useState(0),[j,k]=e.useState(0),l=!!(h&&j);return aj(g.scrollbarX,()=>{let a=g.scrollbarX?.offsetHeight||0;g.onCornerHeightChange(a),k(a)}),aj(g.scrollbarY,()=>{let a=g.scrollbarY?.offsetWidth||0;g.onCornerWidthChange(a),i(a)}),l?(0,d.jsx)(x.sG.div,{...f,ref:b,style:{width:h,height:j,position:"absolute",right:"ltr"===g.dir?0:void 0,left:"rtl"===g.dir?0:void 0,bottom:0,...a.style}}):null});function ac(a){return a?parseInt(a,10):0}function ad(a,b){let c=a/b;return isNaN(c)?0:c}function ae(a){let b=ad(a.viewport,a.content),c=a.scrollbar.paddingStart+a.scrollbar.paddingEnd;return Math.max((a.scrollbar.size-c)*b,18)}function af(a,b,c="ltr"){let d=ae(b),e=b.scrollbar.paddingStart+b.scrollbar.paddingEnd,f=b.scrollbar.size-e,g=b.content-b.viewport,h=function(a,[b,c]){return Math.min(c,Math.max(b,a))}(a,"ltr"===c?[0,g]:[-1*g,0]);return ag([0,g],[0,f-d])(h)}function ag(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}var ah=(a,b=()=>{})=>{let c={left:a.scrollLeft,top:a.scrollTop},d=0;return!function e(){let f={left:a.scrollLeft,top:a.scrollTop},g=c.left!==f.left,h=c.top!==f.top;(g||h)&&b(),c=f,d=window.requestAnimationFrame(e)}(),()=>window.cancelAnimationFrame(d)};function ai(a,b){let c=(0,B.c)(a),d=e.useRef(0);return e.useEffect(()=>()=>window.clearTimeout(d.current),[]),e.useCallback(()=>{window.clearTimeout(d.current),d.current=window.setTimeout(c,b)},[c,b])}function aj(a,b){let c=(0,B.c)(b);(0,D.N)(()=>{let b=0;if(a){let d=new ResizeObserver(()=>{cancelAnimationFrame(b),b=window.requestAnimationFrame(c)});return d.observe(a),()=>{window.cancelAnimationFrame(b),d.unobserve(a)}}},[a,c])}var ak=c(93544);let al=(0,e.forwardRef)(({className:a,children:b,viewportClassName:c,...e},f)=>(0,d.jsxs)(K,{ref:f,className:(0,ak.cn)("relative overflow-hidden",a),...e,children:[(0,d.jsx)(M,{className:(0,ak.cn)("h-full w-full rounded-[inherit]",c),children:b}),(0,d.jsx)(am,{}),(0,d.jsx)(aa,{})]}));al.displayName="ScrollArea";let am=(0,e.forwardRef)(({className:a,orientation:b="vertical",...c},e)=>(0,d.jsx)(O,{ref:e,orientation:b,className:(0,ak.cn)("flex touch-none select-none","vertical"===b&&"h-full w-2.5 border-l border-l-transparent p-px","horizontal"===b&&"h-2.5 flex-col border-t border-t-transparent p-px",a),...c,children:(0,d.jsx)(Z,{className:"relative flex-1 rounded-full bg-[color:color-mix(in_srgb,var(--border-strong)_75%,transparent)] hover:bg-[var(--border-strong)]"})}));am.displayName="ScrollBar";var an=c(74712);let ao=/(?:127\.0\.0\.1|0\.0\.0\.0|localhost|::1|\[::1\])/i;function ap(a){return a.find(a=>(function(a){try{let b=new URL(a);return ao.test(b.hostname)}catch{return!1}})(a))??null}var aq=c(2621);let ar=new Map([["Backspace","Backspace"],["Delete","Delete"],["Enter","Enter"],["Tab","Tab"],["Escape","Escape"],["ArrowUp","ArrowUp"],["ArrowDown","ArrowDown"],["ArrowLeft","ArrowLeft"],["ArrowRight","ArrowRight"],["Home","Home"],["End","End"],["PageUp","PageUp"],["PageDown","PageDown"],[" ","Space"]]);function as(a){let b=Date.parse(a);return Number.isNaN(b)?a:new Intl.DateTimeFormat("en-US",{hour:"numeric",minute:"2-digit",second:"2-digit",timeZone:"UTC"}).format(new Date(b))}function at(a,b=120){return a.length<=b?a:`${a.slice(0,b-1)}…`}function au(a,b=180){let c=at((a??"").replace(/\s+/g," ").trim(),b);return c?`"${c.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`:null}function av(a){return a.map(a=>a?.trim()).filter(a=>!!a).join("; ")}function aw(a,b){return[`[${a}]`,...b.map(a=>a?.trim()).filter(a=>!!a)].join("\n")}function ax(a,b){return{inlineText:av(["[Browser selection]",`selector=${au(a.selector,220)}`,`tag=${a.tag}`,a.role?`role=${a.role}`:null,a.name?`name=${au(a.name,140)}`:null,a.text?`text=${au(a.text,180)}`:null,a.frameName?`frame=${au(a.frameName,120)}`:null,b?`page=${au(b,220)}`:null]),draftText:aw("Browser selection",[b?`Page: ${b}`:null,`Frame: ${a.frameName} (${a.frameUrl})`,`Selector: ${a.selector}`,`Tag: ${a.tag}`,a.role?`Role: ${a.role}`:null,a.name?`Name: ${a.name}`:null,a.text?`Text: ${a.text}`:null,a.htmlPreview?`HTML preview: ${a.htmlPreview}`:null]),successMessage:"Queued the selected element for terminal input."}}function ay(a,b,c,d){let e=b.slice("console"===a?-8:-10),f=e.map(b=>{let c=[b.level,au(b.message,120)];return"network"===a&&(c.unshift(b.method??"GET"),c.push("number"==typeof b.status?String(b.status):null),c.push(b.url?au(b.url,120):null)),c.filter(Boolean).join(" ")});return{inlineText:av(["console"===a?"[Browser console]":"[Browser network]",c?`page=${au(c,220)}`:null,d?`selected=${au(d.selector,180)}`:null,`entries=${au(f.join(" | "),520)}`]),draftText:aw("console"===a?"Browser console logs":"Browser network logs",[c?`Page: ${c}`:null,d?`Selected element: ${d.selector}`:null,...e.map(b=>"console"===a?`- ${as(b.timestamp)} ${b.level}: ${b.message}`:`- ${as(b.timestamp)} ${b.method??"GET"} ${b.status??"-"} ${b.url??b.message}`)]),successMessage:"console"===a?"Queued recent console logs for terminal input.":"Queued recent network logs for terminal input."}}let az=/(?:127\.0\.0\.1|0\.0\.0\.0|localhost|::1|\[::1\])/i;function aA(a){let b=a?.trim();if(!b)return null;try{return new URL(b).origin}catch{return null}}function aB(a){return a?"Yes":"No"}function aC(a,b="None"){return a?.trim()||b}function aD({label:a,value:b,hint:c,monospace:e=!1}){return(0,d.jsxs)("div",{className:"rounded-[8px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-3",children:[(0,d.jsx)("div",{className:"text-[10px] uppercase tracking-wide text-[var(--vk-text-muted)]",children:a}),(0,d.jsx)("div",{className:(0,ak.cn)("mt-1 text-[13px] font-medium text-[var(--vk-text-normal)]",e?"break-all font-mono text-[11px] leading-5":null),children:b}),(0,d.jsx)("div",{className:"mt-1 text-[11px] leading-5 text-[var(--vk-text-muted)]",children:c})]})}function aE({section:a,onCopy:b}){return(0,d.jsxs)("div",{className:"overflow-hidden rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)]",children:[(0,d.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsx)("div",{className:"text-[11px] uppercase tracking-wide text-[var(--vk-text-muted)]",children:a.title}),(0,d.jsx)("div",{className:"mt-1 text-[11px] leading-5 text-[var(--vk-text-muted)]",children:a.description})]}),(0,d.jsx)("div",{className:"divide-y divide-[var(--vk-border)]",children:a.fields.map(c=>(0,d.jsxs)("div",{className:"flex items-start gap-3 px-3 py-2.5",children:[(0,d.jsx)("div",{className:"w-28 shrink-0 text-[10px] uppercase tracking-wide text-[var(--vk-text-muted)]",children:c.label}),(0,d.jsx)("div",{className:(0,ak.cn)("min-w-0 flex-1 text-[12px] text-[var(--vk-text-normal)]",c.monospace?"break-all font-mono text-[11px] leading-5":"leading-5"),children:c.value}),c.copyValue?(0,d.jsx)(w.$,{type:"button",variant:"ghost",size:"sm",className:"h-7 shrink-0",onClick:()=>{b(c.copyValue,`${c.label} copied to clipboard.`)},children:(0,d.jsx)(f.A,{className:"h-3.5 w-3.5"})}):null]},`${a.id}-${c.label}`))})]})}function aF({sessionId:a,active:b,onQueueTerminalInsert:c,onConnectionChange:g}){let[x,y]=(0,e.useState)(null),[z,A]=(0,e.useState)([]),[B,C]=(0,e.useState)(!1),[D,E]=(0,e.useState)(!1),[F,G]=(0,e.useState)(!0),[H,I]=(0,e.useState)(!0),[J,K]=(0,e.useState)(null),[L,M]=(0,e.useState)(null),[N,O]=(0,e.useState)(null),[P,Q]=(0,e.useState)(null),[R,S]=(0,e.useState)("navigate"),[T,U]=(0,e.useState)("elements"),[V,W]=(0,e.useState)(null),[X,Y]=(0,e.useState)(""),[Z,$]=(0,e.useState)(!1),[_,aa]=(0,e.useState)(!1),[ab,ac]=(0,e.useState)({naturalWidth:0,naturalHeight:0,renderedWidth:0,renderedHeight:0});(0,e.useRef)(null);let ad=(0,e.useRef)(Promise.resolve()),ae=(0,e.useRef)(null),af=(0,e.useRef)(null);(0,e.useRef)(Date.now());let ag=(0,e.useRef)(null);(0,e.useRef)(null),(0,e.useRef)(null);let ah=(0,e.useRef)(0),ai=(0,e.useRef)(0),aj=(0,e.useRef)(0),am=(0,e.useRef)(0),ao=(0,e.useRef)(0),au=(0,e.useRef)(0),av=(0,e.useRef)(0);(0,e.useRef)(0);let aw=(0,e.useRef)(0),[aG,aH]=(0,e.useState)(!0),aI=ap(x?.candidateUrls??[]),aJ=Z&&_,aK=(0,e.useCallback)(b=>{let c=new URLSearchParams,d=b?.trim();d&&c.set("previewUrlHint",d);let e=c.toString();return`/api/sessions/${encodeURIComponent(a)}/preview${e?`?${e}`:""}`},[a]),aL=(0,e.useCallback)(async(a="manual")=>{ah.current+=1,"poll"===a&&(aj.current+=1);try{let a=await fetch(aK(X),{cache:"no-store"}),b=await a.json().catch(()=>null);if(!a.ok)throw Error(b&&"error"in b?b.error??"Failed to load preview state":`Failed to load preview state: ${a.status}`);let c=Date.now();null===ag.current&&(ag.current=c),y(b),K(null),Y(a=>a.trim().length>0&&a!==b.currentUrl?a:b.currentUrl??ap(b.candidateUrls)??b.candidateUrls[0]??a)}catch(a){throw ai.current+=1,a}},[aK,X]),aM=(0,e.useCallback)(async a=>{am.current+=1,E(!0),K(null);try{let b="connect"===a.command||"navigate"===a.command?a.url:X,c=await fetch(aK(b),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await c.json().catch(()=>null);if(!c.ok)throw d&&"object"==typeof d&&"status"in d&&d.status&&y(d.status),Error(d&&"error"in d?d.error??"Preview command failed":`Preview command failed: ${c.status}`);return y(d),d}catch(a){throw ao.current+=1,a}finally{E(!1)}},[aK,X]),aN=(0,e.useCallback)((a,b)=>{ad.current=ad.current.catch(()=>void 0).then(async()=>{try{await aM(a)}catch(a){K(a instanceof Error?a.message:b)}})},[aM]);(0,e.useCallback)(async b=>{if(!x?.connected)return void A([]);au.current+=1,C(!0);try{let c=new URLSearchParams;b&&c.set("frameId",b),H&&c.set("interactiveOnly","1");let d=await fetch(`/api/sessions/${encodeURIComponent(a)}/preview/dom?${c.toString()}`,{cache:"no-store"}),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e&&"error"in e?e.error??"Failed to inspect DOM":`Failed to inspect DOM: ${d.status}`);A(e.nodes)}catch(a){av.current+=1,K(a instanceof Error?a.message:"Failed to inspect DOM"),A([])}finally{C(!1)}},[H,a,x?.connected]);let aO=(0,e.useMemo)(()=>x?.connected?`/api/sessions/${encodeURIComponent(a)}/preview/screenshot?ts=${encodeURIComponent(x.screenshotKey)}`:null,[a,x?.connected,x?.screenshotKey]),aP=aI??x?.candidateUrls[0]??null,aQ=(0,e.useMemo)(()=>x?.frames.find(a=>a.id===x.activeFrameId)??null,[x?.activeFrameId,x?.frames]),aR=(0,e.useMemo)(()=>x?.frames.find(a=>a.isMain)??null,[x?.frames]),aS=(0,e.useMemo)(()=>aA(x?.currentUrl),[x?.currentUrl]),aT=(0,e.useMemo)(()=>{let a=x?.selectedElement;return[{id:"page",title:"Page",description:"Current page identity and live preview worker state.",fields:[{label:"Title",value:aC(x?.title,"Untitled")},{label:"Current URL",value:aC(x?.currentUrl),copyValue:x?.currentUrl??null,monospace:!0},{label:"Current origin",value:aC(aS),copyValue:aS,monospace:!0},{label:"Connected",value:aB(x?.connected)},{label:"Last error",value:aC(x?.lastError,"None")}]},{id:"navigation",title:"Navigation",description:"History state and frame orientation for the current page.",fields:[{label:"Can go back",value:aB(x?.canGoBack)},{label:"Can go forward",value:aB(x?.canGoForward)},{label:"Active frame",value:aC(aQ?.name)},{label:"Main frame",value:aC(aR?.name)},{label:"Frame count",value:`${x?.frames.length??0}`}]},{id:"worker",title:"Worker",description:"Reported candidates, logs, and worker render metadata.",fields:[{label:"Candidate URLs",value:`${x?.candidateUrls.length??0}`},{label:"Auto-connect",value:aC(aI??aP),copyValue:aI??aP??null,monospace:!0},{label:"Screenshot key",value:aC(x?.screenshotKey,"Unavailable"),monospace:!0},{label:"Console rows",value:`${x?.consoleLogs.length??0}`},{label:"Network rows",value:`${x?.networkLogs.length??0}`}]},{id:"selection",title:"Selection",description:"Current element context captured from inspect mode.",fields:[{label:"Selector",value:aC(a?.selector),copyValue:a?.selector??null,monospace:!0},{label:"Tag",value:aC(a?.tag)},{label:"Role",value:aC(a?.role)},{label:"Frame",value:aC(a?.frameName)},{label:"Text",value:aC(a?.text)}]}]},[aQ?.name,aI,aS,aR?.name,aP,x]),aU=(0,e.useMemo)(()=>(x?.candidateUrls??[]).map(a=>{let b=aA(a);return{url:a,origin:b,isLoopback:function(a){try{return az.test(new URL(a).hostname)}catch{return!1}}(a),isPreferred:a===aI,isConnected:!!(x?.currentUrl&&(x.currentUrl===a||b&&aS===b)),isTunnelOrigin:!!(x?.tunnelLocalOrigin&&b===x.tunnelLocalOrigin)}}),[aI,aS,x?.candidateUrls,x?.currentUrl,x?.tunnelLocalOrigin]),aV=(0,e.useMemo)(()=>aU.filter(a=>a.isLoopback).length,[aU]),aW=(0,e.useMemo)(()=>aU.find(a=>a.isConnected)??null,[aU]),aX=null!==P,aY=!!aQ?.isMain,aZ=(0,e.useMemo)(()=>{let a=x?.selectedElement?.bounds;if(!x?.selectedElement||!a||!aR||x.selectedElement.frameId!==aR.id||!ab.naturalWidth||!ab.naturalHeight||!ab.renderedWidth||!ab.renderedHeight)return null;let b=ab.renderedWidth/ab.naturalWidth,c=ab.renderedHeight/ab.naturalHeight;return{left:`${a.x*b}px`,top:`${a.y*c}px`,width:`${Math.max(a.width*b,2)}px`,height:`${Math.max(a.height*c,2)}px`}},[ab,aR,x?.selectedElement]),a$=(0,e.useCallback)(async(a,b)=>{let c=a?.trim();if(!c)return void M("Nothing to copy yet.");try{await navigator.clipboard.writeText(c),O(b),M(null)}catch{M("Clipboard access is unavailable.")}},[]),a_=(0,e.useCallback)(async a=>{Y(a),K(null);try{await aM({command:"connect",url:a})}catch(a){K(a instanceof Error?a.message:"Failed to connect preview")}},[aM]),a0=(0,e.useCallback)(async()=>{let a=X.trim();a&&await a_(a)},[a_,X]),a1=(0,e.useCallback)((a,b,c=!1)=>{W({anchorX:a,anchorY:b,pending:c}),M(null),O(null)},[]),a2=(0,e.useCallback)(a=>{S(a),"inspect"===a&&U("elements"),W(null),M(null),O(null)},[]),a3=(0,e.useMemo)(()=>{if(!V)return null;let a=ab.renderedWidth||340,b=ab.renderedHeight||280,c=Math.max(220,b-24);if(a<=520)return{left:"12px",top:`${Math.max(12,b-Math.min(280,c)-12)}px`,width:`${Math.max(a-24,220)}px`,maxHeight:`${c}px`};let d=Math.min(340,Math.max(a-24,240)),e=Math.max(12,a-d-12),f=Math.max(12,b-280-12),g=V.anchorX+18,h=V.anchorY+18,i=g>e?Math.max(12,V.anchorX-d-18):g,j=h>f?Math.max(12,V.anchorY-280-18):h;return{left:`${Math.min(Math.max(i,12),e)}px`,top:`${Math.min(Math.max(j,12),f)}px`,width:`${d}px`,maxHeight:`${c}px`}},[ab.renderedHeight,ab.renderedWidth,V]),a4=(0,e.useCallback)(a=>{if(!ae.current)return null;let b=ae.current.getBoundingClientRect();if(!b.width||!b.height||!ae.current.naturalWidth||!ae.current.naturalHeight)return null;let c=a.clientX-b.left,d=a.clientY-b.top;return{anchorX:c,anchorY:d,x:c/b.width*ae.current.naturalWidth,y:d/b.height*ae.current.naturalHeight}},[]),a5=(0,e.useCallback)(a=>{c(a),M(null),O(a.successMessage)},[c]),a6=(0,e.useCallback)(async(a,b,c,d)=>{a1(c,d,!0);try{let e=await aM({command:"selectAtPoint",x:a,y:b});return a1(c,d,!1),e}catch(a){throw W(null),a}},[a1,aM]),a7=(0,e.useCallback)(async(a,b)=>{let c=Math.max(ab.renderedWidth-44,12);a1(c,12,!0);try{let d=await aM({command:"selectBySelector",selector:a,frameId:b});return a1(c,12,!1),d}catch(a){throw W(null),a}},[ab.renderedWidth,a1,aM]),a8=(0,e.useCallback)(async a=>{if(D)return;let b=a4(a);if(b){if(W(null),M(null),O(null),"navigate"===R){af.current?.focus({preventScroll:!0});try{await aM({command:"clickAtPoint",x:b.x,y:b.y})}catch(a){K(a instanceof Error?a.message:"Failed to interact with preview")}return}if(aY)try{await a6(b.x,b.y,b.anchorX,b.anchorY)}catch(a){K(a instanceof Error?a.message:"Failed to select element")}}},[D,aY,R,a4,aM,a6]),a9=(0,e.useCallback)(async a=>{if(D||"inspect"!==R||!aY)return;let b=a4(a);if(b){M(null),O(null);try{let a=await a6(b.x,b.y,b.anchorX,b.anchorY);if(!a.selectedElement)throw Error("No element found at the selected point");a5(ax(a.selectedElement,a.currentUrl))}catch(a){K(a instanceof Error?a.message:"Failed to queue selected element")}}},[D,aY,R,a5,a4,a6]),ba=(0,e.useCallback)(a=>{if("navigate"!==R||!x?.connected||a.metaKey||a.ctrlKey||a.altKey)return;let b=ar.get(a.key);if(b){a.preventDefault(),aN({command:"pressKey",key:b},"Failed to send key to preview");return}1===a.key.length&&(a.preventDefault(),aN({command:"typeText",text:a.key},"Failed to type into preview"))},[R,aN,x?.connected]),bb=(0,e.useCallback)(a=>{if("navigate"!==R||!x?.connected)return;let b=a.clipboardData.getData("text");b&&(a.preventDefault(),aN({command:"typeText",text:b},"Failed to paste into preview"))},[R,aN,x?.connected]),bc=(0,e.useCallback)(a=>{if(!x)return void M("Preview state is not loaded yet.");let b=x.consoleLogs.slice(-80),c=x.networkLogs.slice(-80);if("selection"===a&&!x.selectedElement)return void M("Select an element before queueing preview context for terminal input.");if("console"===a&&!b.length)return void M("There are no console logs to send yet.");if("network"===a&&!c.length)return void M("There are no network logs to send yet.");Q(a),M(null),O(null);try{let d="selection"===a&&x.selectedElement?ax(x.selectedElement,x.currentUrl):"console"===a?ay("console",b,x.currentUrl,x.selectedElement):ay("network",c,x.currentUrl,x.selectedElement);a5(d),"selection"===a&&W(null)}catch(a){M(a instanceof Error?a.message:"Failed to queue preview context")}finally{Q(null)}},[a5,x]),bd=(0,e.useCallback)(async()=>{let a=x?.selectedElement?.selector;if(a)try{await navigator.clipboard.writeText(a),O("Selector copied to clipboard."),M(null)}catch{M("Clipboard access is unavailable.")}},[x?.selectedElement?.selector]),be=(0,d.jsxs)(an.tU,{value:T,onValueChange:a=>U(a),className:"flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden lg:min-h-0",children:[(0,d.jsx)("div",{className:"border-b border-[var(--vk-border)] px-2 py-2",children:(0,d.jsxs)(an.j7,{className:"w-full justify-start border-0 bg-transparent p-0",children:[(0,d.jsxs)(an.Xi,{value:"elements",children:[(0,d.jsx)(h,{className:"h-3.5 w-3.5"}),"Elements"]}),(0,d.jsxs)(an.Xi,{value:"console",children:[(0,d.jsx)(i.A,{className:"h-3.5 w-3.5"}),"Console",(0,d.jsx)(v.E,{variant:"outline",children:x?.consoleLogs.length??0})]}),(0,d.jsxs)(an.Xi,{value:"network",children:[(0,d.jsx)(j,{className:"h-3.5 w-3.5"}),"Network",(0,d.jsx)(v.E,{variant:"outline",children:x?.networkLogs.length??0})]}),(0,d.jsxs)(an.Xi,{value:"info",children:[(0,d.jsx)(k,{className:"h-3.5 w-3.5"}),"Info"]}),(0,d.jsxs)(an.Xi,{value:"proxies",children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5"}),"Proxies"]})]})}),(0,d.jsxs)(an.av,{value:"elements",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,d.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Selected element"}),(0,d.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"inspect"===R?"Single-click to inspect. Double-click to queue the element for terminal input.":"Switch to Inspect mode to capture element context from the preview."})]}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)(w.$,{type:"button",variant:H?"primary":"outline",size:"sm",onClick:()=>I(a=>!a),children:H?"Interactive only":"All nodes"}),(0,d.jsxs)(w.$,{type:"button",variant:"ghost",size:"sm",onClick:()=>void bd(),disabled:!x?.selectedElement,children:[(0,d.jsx)(f.A,{className:"h-3.5 w-3.5"}),"Copy selector"]}),(0,d.jsxs)(w.$,{type:"button",variant:"primary",size:"sm",onClick:()=>void bc("selection"),disabled:aX||!x?.selectedElement,children:["selection"===P?(0,d.jsx)(m.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,d.jsx)(n.A,{className:"h-3.5 w-3.5"}),"Queue for terminal"]})]})]}),x?.selectedElement?(0,d.jsxs)("div",{className:"mt-3 rounded-[8px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-3",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)("span",{className:"font-mono text-[12px] text-[var(--vk-text-normal)]",children:x.selectedElement.tag}),x.selectedElement.role?(0,d.jsx)(v.E,{variant:"outline",children:x.selectedElement.role}):null,x.selectedElement.frameName?(0,d.jsx)(v.E,{variant:"outline",children:x.selectedElement.frameName}):null]}),(0,d.jsx)("div",{className:"mt-2 text-[12px] text-[var(--vk-text-normal)]",children:at(x.selectedElement.name||x.selectedElement.text||"Selected element",180)}),(0,d.jsx)("div",{className:"mt-2 break-all font-mono text-[11px] text-[var(--vk-text-muted)]",children:x.selectedElement.selector}),x.selectedElement.htmlPreview?(0,d.jsx)("div",{className:"mt-2 rounded-[6px] border border-dashed border-[var(--vk-border)] px-2.5 py-2 text-[11px] text-[var(--vk-text-muted)]",children:at(x.selectedElement.htmlPreview,260)}):null]}):(0,d.jsx)("div",{className:"mt-3 rounded-[8px] border border-dashed border-[var(--vk-border)] px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"No element selected yet."}),x?.frames.length?(0,d.jsx)("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:x.frames.map(a=>(0,d.jsxs)("button",{type:"button",onClick:()=>{aM({command:"selectFrame",frameId:a.id}).catch(a=>{K(a instanceof Error?a.message:"Failed to select frame")})},className:(0,ak.cn)("inline-flex max-w-full items-center gap-2 rounded-[5px] border px-2.5 py-1.5 text-[11px]",x.activeFrameId===a.id?"border-[var(--vk-orange)] bg-[color:color-mix(in_srgb,var(--vk-orange)_10%,transparent)] text-[var(--vk-text-normal)]":"border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-muted)] hover:text-[var(--vk-text-normal)]"),children:[(0,d.jsx)(v.E,{variant:"outline",children:a.isMain?"main":"frame"}),(0,d.jsx)("span",{className:"truncate",children:a.name})]},a.id))}):null]}),(0,d.jsx)(al,{className:"min-h-0 flex-1",viewportClassName:aq.VM,children:(0,d.jsx)("div",{className:"space-y-1 p-3",children:B?(0,d.jsxs)("div",{className:"flex items-center gap-2 rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:[(0,d.jsx)(m.A,{className:"h-4 w-4 animate-spin"}),"Inspecting frame DOM…"]}):z.length?z.map((a,b)=>(0,d.jsxs)("button",{type:"button",className:(0,ak.cn)("w-full rounded-[6px] border px-3 py-2.5 text-left transition-colors","inspect"===R?"border-[var(--vk-border)] bg-[var(--vk-bg-main)] hover:bg-[var(--vk-bg-hover)]":"cursor-not-allowed border-[var(--vk-border)] bg-[var(--vk-bg-main)] opacity-60"),disabled:"inspect"!==R,onClick:()=>{W(null),M(null),O(null),a7(a.selector,x?.activeFrameId).catch(a=>{K(a instanceof Error?a.message:"Failed to select DOM node")})},onDoubleClick:()=>{M(null),O(null),a7(a.selector,x?.activeFrameId).then(a=>{if(!a.selectedElement)throw Error("Failed to resolve the selected DOM node");a5(ax(a.selectedElement,a.currentUrl))}).catch(a=>{K(a instanceof Error?a.message:"Failed to queue DOM node")})},children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)("span",{className:"font-mono text-[12px] text-[var(--vk-text-normal)]",children:a.tag}),a.interactive?(0,d.jsx)(v.E,{variant:"warning",children:"interactive"}):null,a.role?(0,d.jsx)(v.E,{variant:"outline",children:a.role}):null]}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-[11px] text-[var(--vk-text-muted)]",children:a.selector}),a.text?(0,d.jsx)("div",{className:"mt-1 text-[12px] text-[var(--vk-text-normal)]",children:at(a.text,180)}):null]},`${a.id??"node"}-${b}-${a.selector}-${a.tag}-${a.text}`)):(0,d.jsx)("div",{className:"rounded-[8px] border border-dashed border-[var(--vk-border)] px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"inspect"===R?"No DOM nodes to show for the current frame yet.":"Switch to Inspect mode to browse the current frame DOM."})})})]}),(0,d.jsxs)(an.av,{value:"console",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Console output"}),(0,d.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"Live browser console events from the preview worker."})]}),(0,d.jsxs)(w.$,{type:"button",variant:"primary",size:"sm",onClick:()=>void bc("console"),disabled:aX||!x?.consoleLogs.length,children:["console"===P?(0,d.jsx)(m.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,d.jsx)(n.A,{className:"h-3.5 w-3.5"}),"Queue for terminal"]})]}),(0,d.jsx)(al,{className:"min-h-0 flex-1",viewportClassName:aq.VM,children:(0,d.jsx)("div",{className:"space-y-1 p-3",children:x?.consoleLogs.length?x.consoleLogs.map(a=>(0,d.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2.5 text-[11px] text-[var(--vk-text-normal)]",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-[10px] uppercase tracking-wide text-[var(--vk-text-muted)]",children:[(0,d.jsx)("span",{children:a.level}),(0,d.jsx)("span",{children:as(a.timestamp)})]}),(0,d.jsx)("div",{className:"mt-1 whitespace-pre-wrap break-all font-mono",children:a.message})]},a.id)):(0,d.jsx)("div",{className:"rounded-[8px] border border-dashed border-[var(--vk-border)] px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"Console output appears here once the page loads."})})})]}),(0,d.jsxs)(an.av,{value:"network",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Network requests"}),(0,d.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"Recent requests captured by the preview worker."})]}),(0,d.jsxs)(w.$,{type:"button",variant:"primary",size:"sm",onClick:()=>void bc("network"),disabled:aX||!x?.networkLogs.length,children:["network"===P?(0,d.jsx)(m.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,d.jsx)(n.A,{className:"h-3.5 w-3.5"}),"Queue for terminal"]})]}),(0,d.jsx)(al,{className:"min-h-0 flex-1",viewportClassName:aq.VM,children:(0,d.jsx)("div",{className:"space-y-1 p-3",children:x?.networkLogs.length?x.networkLogs.map(a=>(0,d.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2.5 text-[11px] text-[var(--vk-text-normal)]",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-[10px] uppercase tracking-wide text-[var(--vk-text-muted)]",children:[(0,d.jsx)("span",{children:a.method??"GET"}),"number"==typeof a.status?(0,d.jsx)("span",{children:a.status}):null,a.resourceType?(0,d.jsx)("span",{children:a.resourceType}):null,(0,d.jsx)("span",{children:as(a.timestamp)})]}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono",children:a.url??a.message})]},a.id)):(0,d.jsx)("div",{className:"rounded-[8px] border border-dashed border-[var(--vk-border)] px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"Network requests appear here after the preview loads."})})})]}),(0,d.jsxs)(an.av,{value:"info",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Preview info"}),(0,d.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"A cleaner snapshot of page, worker, navigation, and element state."})]}),(0,d.jsxs)(w.$,{type:"button",variant:"ghost",size:"sm",onClick:()=>{a$(x?.currentUrl,"Current URL copied to clipboard.")},disabled:!x?.currentUrl,children:[(0,d.jsx)(f.A,{className:"h-3.5 w-3.5"}),"Copy URL"]})]}),(0,d.jsx)(al,{className:"min-h-0 flex-1",viewportClassName:aq.VM,children:(0,d.jsxs)("div",{className:"space-y-3 p-3 text-[12px] text-[var(--vk-text-normal)]",children:[(0,d.jsxs)("div",{className:"grid gap-2 sm:grid-cols-2",children:[(0,d.jsx)(aD,{label:"Connected",value:x?.connected?"Live":"Idle",hint:x?.currentUrl?at(x.currentUrl,60):"No active page yet"}),(0,d.jsx)(aD,{label:"Frames",value:`${x?.frames.length??0}`,hint:aQ?.name??"No active frame"}),(0,d.jsx)(aD,{label:"Console",value:`${x?.consoleLogs.length??0}`,hint:"Captured browser console rows"}),(0,d.jsx)(aD,{label:"Network",value:`${x?.networkLogs.length??0}`,hint:"Recent preview worker requests"})]}),aT.map(a=>(0,d.jsx)(aE,{section:a,onCopy:a$},a.id))]})})]}),(0,d.jsxs)(an.av,{value:"proxies",className:"mt-0 flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Proxy and tunnel routing"}),(0,d.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"Candidate URLs come from the session. Tunnel metadata shows how bridge-backed previews map remote loopback into the local display origin."})]}),(0,d.jsxs)(w.$,{type:"button",variant:"ghost",size:"sm",onClick:()=>{a$(x?.tunnelLocalOrigin??x?.tunnelUrl,"Tunnel mapping copied to clipboard.")},disabled:!x?.tunnelLocalOrigin&&!x?.tunnelUrl,children:[(0,d.jsx)(f.A,{className:"h-3.5 w-3.5"}),"Copy route"]})]}),(0,d.jsx)(al,{className:"min-h-0 flex-1",viewportClassName:aq.VM,children:(0,d.jsxs)("div",{className:"space-y-3 p-3 text-[12px] text-[var(--vk-text-normal)]",children:[(0,d.jsxs)("div",{className:"grid gap-2 sm:grid-cols-2",children:[(0,d.jsx)(aD,{label:"Candidates",value:`${aU.length}`,hint:aU.length?"Reported by the current session":"No targets reported yet"}),(0,d.jsx)(aD,{label:"Loopback",value:`${aV}`,hint:aV?"Local dev URLs available":"No local loopback URLs"}),(0,d.jsx)(aD,{label:"Tunnel",value:x?.tunnelUrl?"Ready":"None",hint:x?.tunnelLocalOrigin??"No bridge tunnel mapping",monospace:!!x?.tunnelLocalOrigin}),(0,d.jsx)(aD,{label:"Current origin",value:aS??"Idle",hint:aW?"Matches the active preview page":"Not connected to a candidate yet",monospace:!!aS})]}),(0,d.jsx)(aE,{section:{id:"tunnel-mapping",title:"Tunnel mapping",description:"Bridge previews can expose a remote tunnel while still rendering the equivalent local origin in the browser workspace.",fields:[{label:"Local origin",value:aC(x?.tunnelLocalOrigin,"Not set"),copyValue:x?.tunnelLocalOrigin??null,monospace:!0},{label:"Tunnel URL",value:aC(x?.tunnelUrl,"Not set"),copyValue:x?.tunnelUrl??null,monospace:!0},{label:"Current origin",value:aC(aS),copyValue:aS,monospace:!0}]},onCopy:a$}),(0,d.jsxs)("div",{className:"overflow-hidden rounded-[10px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)]",children:[(0,d.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-3 py-3",children:[(0,d.jsx)("div",{className:"text-[11px] uppercase tracking-wide text-[var(--vk-text-muted)]",children:"Candidate URLs"}),(0,d.jsx)("div",{className:"mt-1 text-[11px] leading-5 text-[var(--vk-text-muted)]",children:"Use connect to load a reported target into the preview browser, or copy the URL or origin for terminal context."})]}),(0,d.jsx)("div",{className:"space-y-2 p-3",children:aU.length?aU.map(a=>(0,d.jsxs)("div",{className:"rounded-[8px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 py-3",children:[(0,d.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("div",{className:(0,ak.cn)("text-[12px] font-medium text-[var(--vk-text-normal)]",a.origin?"truncate":"break-all"),children:a.origin??a.url}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-[11px] text-[var(--vk-text-muted)]",children:a.url})]}),a.isConnected?(0,d.jsx)(v.E,{variant:"success",children:"current"}):null,a.isPreferred?(0,d.jsx)(v.E,{variant:"warning",children:"auto"}):null,a.isTunnelOrigin?(0,d.jsx)(v.E,{variant:"outline",children:"tunnel origin"}):null,(0,d.jsx)(v.E,{variant:"outline",children:a.isLoopback?"loopback":"remote"})]}),(0,d.jsxs)("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[(0,d.jsxs)(w.$,{type:"button",variant:"primary",size:"sm",onClick:()=>{a_(a.url)},children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5"}),"Connect"]}),(0,d.jsxs)(w.$,{type:"button",variant:"outline",size:"sm",onClick:()=>{a$(a.url,"Candidate URL copied to clipboard.")},children:[(0,d.jsx)(f.A,{className:"h-3.5 w-3.5"}),"Copy URL"]}),a.origin?(0,d.jsxs)(w.$,{type:"button",variant:"ghost",size:"sm",onClick:()=>{a$(a.origin,"Candidate origin copied to clipboard.")},children:[(0,d.jsx)(o,{className:"h-3.5 w-3.5"}),"Copy origin"]}):null]})]},a.url)):(0,d.jsx)("div",{className:"rounded-[8px] border border-dashed border-[var(--vk-border)] px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"No candidate URLs detected yet."})})]})]})})]})]});return(0,d.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden rounded-[8px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)]",children:[(0,d.jsx)("div",{className:"shrink-0 border-b border-[var(--vk-border)] px-3 py-3",children:(0,d.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(l.A,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,d.jsx)("span",{className:"text-[13px] font-medium text-[var(--vk-text-normal)]",children:"Preview browser"})]}),x?.connected?(0,d.jsx)(v.E,{variant:"success",children:"connected"}):(0,d.jsx)(v.E,{variant:"outline",children:"idle"}),aQ?(0,d.jsx)(v.E,{variant:"outline",children:aQ.isMain?"main frame":"nested frame"}):null,x?.title?(0,d.jsx)(v.E,{variant:"outline",children:at(x.title,40)}):null,V?.pending?(0,d.jsx)(v.E,{variant:"warning",children:"selecting element…"}):null]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2 lg:flex-row lg:items-center",children:[(0,d.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2 rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3",children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,d.jsx)("input",{value:X,onChange:a=>Y(a.target.value),placeholder:aP??"http://127.0.0.1:3000",className:"h-10 min-w-0 flex-1 bg-transparent text-[13px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsxs)(w.$,{type:"button",variant:"primary",onClick:()=>void a0(),disabled:D||!X.trim(),children:[D?(0,d.jsx)(m.A,{className:"h-4 w-4 animate-spin"}):(0,d.jsx)(p,{className:"h-4 w-4"}),"Connect"]}),(0,d.jsxs)(w.$,{type:"button","aria-label":"Go back",variant:"outline",onClick:()=>void aM({command:"goBack"}).then(a=>{Y(a.currentUrl??"")}).catch(a=>{K(a instanceof Error?a.message:"Failed to go back")}),disabled:!x?.connected||!x?.canGoBack||D,children:[(0,d.jsx)(q.A,{className:"h-3.5 w-3.5"}),(0,d.jsx)("span",{className:"hidden sm:inline",children:"Back"})]}),(0,d.jsxs)(w.$,{type:"button","aria-label":"Go forward",variant:"outline",onClick:()=>void aM({command:"goForward"}).then(a=>{Y(a.currentUrl??"")}).catch(a=>{K(a instanceof Error?a.message:"Failed to go forward")}),disabled:!x?.connected||!x?.canGoForward||D,children:[(0,d.jsx)(r,{className:"h-3.5 w-3.5"}),(0,d.jsx)("span",{className:"hidden sm:inline",children:"Forward"})]}),(0,d.jsxs)(w.$,{type:"button","aria-label":"Refresh preview status",variant:"outline",onClick:()=>void aL("manual").catch(a=>{K(a instanceof Error?a.message:"Failed to refresh preview")}),disabled:F||D,children:[(0,d.jsx)(s.A,{className:(0,ak.cn)("h-3.5 w-3.5",D&&"animate-spin")}),(0,d.jsx)("span",{className:"hidden sm:inline",children:"Refresh"})]}),(0,d.jsxs)(w.$,{type:"button","aria-label":"Reload preview page",variant:"outline",onClick:()=>void aM({command:"reload"}).catch(a=>{K(a instanceof Error?a.message:"Failed to reload preview")}),disabled:!x?.connected||D,children:[(0,d.jsx)(o,{className:"h-3.5 w-3.5"}),(0,d.jsx)("span",{className:"hidden sm:inline",children:"Reload"})]})]})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2 lg:flex-row lg:items-center lg:justify-between",children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1 rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] p-1",children:[(0,d.jsxs)(w.$,{type:"button",size:"sm",variant:"navigate"===R?"primary":"ghost",onClick:()=>a2("navigate"),children:[(0,d.jsx)(p,{className:"h-3.5 w-3.5"}),"Navigate"]}),(0,d.jsxs)(w.$,{type:"button",size:"sm",variant:"inspect"===R?"primary":"ghost",onClick:()=>a2("inspect"),children:[(0,d.jsx)(t.A,{className:"h-3.5 w-3.5"}),"Inspect"]})]}),(0,d.jsxs)(w.$,{type:"button",size:"sm",variant:aJ?"primary":"outline",className:"lg:hidden",onClick:()=>aa(a=>!a),children:[(0,d.jsx)(h,{className:"h-3.5 w-3.5"}),aJ?"Hide tools":"Browser tools"]})]}),Z?null:(0,d.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"navigate"===R?"Navigate mode sends clicks and typing into the running app.":aY?"Inspect mode lets you click once to inspect, double-click to queue for terminal input.":"Inspect mode is limited to the frame DOM list for nested frames."})]}),!x?.connected&&x?.candidateUrls.length&&(!Z||_)?(0,d.jsx)("div",{className:"flex flex-wrap items-center gap-2",children:x.candidateUrls.map(a=>(0,d.jsxs)("button",{type:"button",className:"inline-flex max-w-full items-center gap-1 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2.5 py-1.5 text-left text-[11px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]",onClick:()=>{a_(a)},children:[(0,d.jsx)(l.A,{className:"h-3 w-3 shrink-0"}),(0,d.jsx)("span",{className:"truncate",children:a})]},a))}):null,J||x?.lastError?(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-[6px] border border-[color:color-mix(in_srgb,var(--vk-red)_45%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-red)_12%,transparent)] px-3 py-2 text-[12px] text-[var(--vk-red)]",children:[(0,d.jsx)(u,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,d.jsx)("span",{children:J??x?.lastError})]}):null,N?(0,d.jsx)("div",{className:"rounded-[6px] border border-[color:color-mix(in_srgb,var(--vk-green)_35%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-green)_10%,transparent)] px-3 py-2 text-[12px] text-[var(--vk-green)]",children:N}):null,L?(0,d.jsx)("div",{className:"rounded-[6px] border border-[color:color-mix(in_srgb,var(--vk-red)_35%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-red)_10%,transparent)] px-3 py-2 text-[12px] text-[var(--vk-red)]",children:L}):null]})}),(0,d.jsxs)("div",{className:`relative flex min-h-0 min-w-0 flex-1 flex-col lg:grid lg:min-h-0 lg:grid-cols-[minmax(0,1.55fr)_minmax(320px,0.95fr)] ${aq.DK}`,children:[(0,d.jsxs)("div",{className:"flex min-h-0 min-w-0 flex-[1.25] flex-col overflow-hidden border-b border-[var(--vk-border)] lg:flex-1 lg:border-b-0 lg:border-r",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 border-b border-[var(--vk-border)] px-3 py-2 text-[11px] text-[var(--vk-text-muted)]",children:[(0,d.jsx)("div",{className:"min-w-0",children:(0,d.jsx)("div",{className:"truncate text-[var(--vk-text-normal)]",children:x?.currentUrl??aP??"No active preview URL yet"})}),x?.connected?(0,d.jsxs)(v.E,{variant:"outline",children:[x?.frames.length??0," frame",(x?.frames.length??0)===1?"":"s"]}):null]}),(0,d.jsx)("div",{className:aq.qg,children:(0,d.jsx)("div",{className:"flex h-full min-h-[min(200px,45vh)] w-full items-center justify-center lg:min-h-[260px]",children:F?(0,d.jsxs)("div",{className:"flex items-center gap-2 text-[13px] text-[var(--vk-text-muted)]",children:[(0,d.jsx)(m.A,{className:"h-4 w-4 animate-spin"}),"Loading preview…"]}):aO?(0,d.jsxs)("div",{ref:af,tabIndex:x?.connected?0:-1,onKeyDown:ba,onPaste:bb,className:`relative flex max-h-full max-w-full items-start justify-center overflow-auto rounded-[10px] outline-none focus-visible:ring-2 focus-visible:ring-[var(--vk-orange)] focus-visible:ring-offset-2 focus-visible:ring-offset-[#0f1012] ${aq.hq}`,children:[(0,d.jsx)("img",{ref:ae,src:aO,alt:"Session preview",className:(0,ak.cn)("max-h-full max-w-full rounded-[8px] object-contain shadow-[0_18px_36px_rgba(0,0,0,0.28)]","navigate"===R?"cursor-pointer":aY?"cursor-crosshair":"cursor-default"),onClick:a=>void a8(a),onDoubleClick:a=>void a9(a),onLoad:a=>{aw.current+=1;let b=a.currentTarget;ac({naturalWidth:b.naturalWidth,naturalHeight:b.naturalHeight,renderedWidth:b.clientWidth,renderedHeight:b.clientHeight})}}),"inspect"===R&&aZ?(0,d.jsx)("div",{className:"pointer-events-none absolute border-2 border-[var(--vk-orange)] bg-[color:color-mix(in_srgb,var(--vk-orange)_18%,transparent)] shadow-[0_0_0_1px_rgba(0,0,0,0.5)]",style:aZ}):null,"inspect"===R&&V&&a3?(0,d.jsx)("div",{className:"pointer-events-none absolute z-20 rounded-[10px] border border-[var(--vk-border)] bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_94%,black_6%)] px-3 py-2 text-[11px] text-[var(--vk-text-normal)] shadow-[0_16px_40px_rgba(0,0,0,0.35)] backdrop-blur",style:a3,children:V.pending?"Selecting element…":x?.selectedElement?`${x.selectedElement.tag} \xb7 ${at(x.selectedElement.selector,120)}`:"Selection ready"}):null]}):(0,d.jsx)("div",{className:"max-w-md text-center text-[13px] text-[var(--vk-text-muted)]",children:"Connect a local dev URL or explicit preview URL to start the preview browser. Navigate mode lets you interact with the running app. Inspect mode lets you capture UI context and queue it into terminal input."})})})]}),Z?null:be]}),Z&&aJ?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"absolute inset-0 z-10 bg-black/35 lg:hidden",onClick:()=>aa(!1),"aria-hidden":"true"}),(0,d.jsxs)("div",{className:"absolute inset-x-0 bottom-0 z-20 flex max-h-[min(72vh,36rem)] min-h-[18rem] flex-col overflow-hidden rounded-t-[14px] border border-b-0 border-[var(--vk-border)] bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_96%,black_4%)] shadow-[0_-24px_48px_rgba(0,0,0,0.42)] lg:hidden",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-[var(--vk-border)] px-3 py-2.5",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,d.jsx)(h,{className:"h-4 w-4 shrink-0 text-[var(--vk-text-muted)]"}),(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("div",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Browser tools"}),(0,d.jsx)("div",{className:"truncate text-[11px] text-[var(--vk-text-muted)]",children:"Hidden by default on mobile so the browser stays front and center."})]})]}),(0,d.jsx)(w.$,{type:"button",variant:"ghost",size:"sm",onClick:()=>aa(!1),children:"Hide"})]}),(0,d.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:be})]})]}):null]})}},48582:(a,b,c)=>{c.d(b,{E:()=>g});var d=c(92692),e=c(93544);let f={default:"border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)]",success:"border-transparent bg-transparent text-[var(--vk-green)]",warning:"border-transparent bg-transparent text-[var(--vk-orange)]",error:"border-transparent bg-transparent text-[var(--vk-red)]",info:"border-transparent bg-transparent text-[var(--vk-text-muted)]",outline:"border-[var(--vk-border)] bg-transparent text-[var(--vk-text-muted)]"};function g({variant:a="default",className:b,children:c}){return(0,d.jsx)("span",{className:(0,e.cn)("inline-flex items-center gap-1 rounded-[3px] border px-1.5 py-0.5 text-[11px] leading-none",f[a],b),children:c})}},69368:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(37303).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},76680:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(37303).A)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]])}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=3990,exports.ids=[3990],exports.modules={25985:(a,b,c)=>{c.d(b,{FM:()=>g,JZ:()=>f,N7:()=>h});var d=c(32679),e=c(70209);async function f(a){let b=await (0,d.ny)(a),c=new Headers({"x-conductor-proxy-authorized":"true","x-conductor-access-authenticated":b.authenticated||"local"===b.provider?"true":"false"});b.role&&c.set("x-conductor-access-role",b.role),b.email&&c.set("x-conductor-access-email",b.email),b.provider&&c.set("x-conductor-access-provider",b.provider);let e=process.env.CONDUCTOR_PROXY_AUTH_SECRET?.trim()||null;return e&&c.set("x-conductor-proxy-secret",e),c}async function g(a,b,c={}){let h=await (0,d.sB)(a,c.role??"viewer");if(h)return h;if(c.requireActionGuard){let b=(0,d.G1)(a);if(b)return b}return(0,e.zP)(a,b,{headers:await f(a)})}async function h(a,b,c={}){let g=await (0,d.sB)(a,c.role??"viewer");if(g)return g;if(c.requireActionGuard){let b=(0,d.G1)(a);if(b)return b}return(0,e.X_)(a,b,{headers:await f(a)})}},28480:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Ob:()=>A});var e=c(71553),f=c(31421),g=c(4573),h=c(73024),i=c(77030),j=c(76760),k=c(8856),l=c(34140),m=c(36026),n=c(94842),o=c(59506),p=a([k,l]);[k,l]=p.then?(await p)():p;let B={width:1440,height:960},C=["127.0.0.1","localhost","::1","0.0.0.0"],D=/^[a-z][a-z\d+.-]*:\/\//i,E=/^(?:localhost|127\.0\.0\.1|0\.0\.0\.0|\[::1\]|::1)(?::\d+)?(?:\/.*)?$/i;function q(a){return a.replace(/^\[(.*)\]$/,"$1").toLowerCase()}function r(a){let b=q(a);return C.includes(b)}function s(a){let b=a.split(".").map(a=>Number.parseInt(a,10));if(4!==b.length||b.some(a=>!Number.isInteger(a)||a<0||a>255))return!0;let[c,d]=b;return 0===c||10===c||127===c||100===c&&d>=64&&d<=127||169===c&&254===d||172===c&&d>=16&&d<=31||192===c&&168===d||198===c&&(18===d||19===d)||c>=224}function t(a){let b=q(a),c=(0,i.isIP)(b);if(4===c)return s(b);if(6===c){let a,c;return c=(a=q(b).toLowerCase()).startsWith("::ffff:")?a.slice(7):null,"::"===a||"::1"===a||a.startsWith("fe8")||a.startsWith("fe9")||a.startsWith("fea")||a.startsWith("feb")||a.startsWith("fc")||a.startsWith("fd")||!!c&&s(c)}return!1}async function u(a){if(process.env.CONDUCTOR_ALLOW_UNSAFE_PREVIEW_HOSTS?.trim().toLowerCase()==="true")return;let b=new URL(a);if(!r(b.hostname)){if(t(b.hostname))throw Error("Preview navigation to private network hosts is blocked. Use loopback URLs for local dev servers or set CONDUCTOR_ALLOW_UNSAFE_PREVIEW_HOSTS=true to override.");if((await (0,e.lookup)(b.hostname,{all:!0,verbatim:!0}).catch(()=>[])).some(a=>t(a.address)))throw Error("Preview navigation resolved to a private network address and was blocked. Set CONDUCTOR_ALLOW_UNSAFE_PREVIEW_HOSTS=true only if you intentionally trust that target.")}}function v(a,b){if(!b)return"direct";try{let c=new URL(a),d=r(q(c.hostname));if(b.allowedOrigins.includes(c.origin))return"bridge";return d?"blocked":"direct"}catch{return"direct"}}function w(a,b){try{let c=new URL(a),d=new URL(b);return c.origin===d.origin}catch{return a===b}}let F=globalThis;function x(a,b){a.push(b),a.length>150&&a.splice(0,a.length-150)}function y(a){return`${a}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function z(a){return(a??"").replace(/\s+/g," ").trim()}class G{async getBrowser(){return this.browserPromise||(this.browserPromise=k.default.launch({headless:!0,executablePath:function(){let a=process.env.PUPPETEER_EXECUTABLE_PATH?.trim();if(a)return a;for(let a of[l.ChromeReleaseChannel.STABLE,l.ChromeReleaseChannel.CANARY,l.ChromeReleaseChannel.BETA,l.ChromeReleaseChannel.DEV])try{return(0,l.computeSystemExecutablePath)({browser:l.Browser.CHROME,channel:a})}catch{}let b=function(){for(let a of"darwin"===process.platform?["/Applications/Google Chrome.app/Contents/MacOS/Google Chrome","/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary","/Applications/Chromium.app/Contents/MacOS/Chromium","/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge","/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"]:"win32"===process.platform?[process.env.PROGRAMFILES,process.env["PROGRAMFILES(X86)"],process.env.LOCALAPPDATA].filter(a=>!!a?.trim()).flatMap(a=>[(0,j.join)(a,"Google","Chrome","Application","chrome.exe"),(0,j.join)(a,"Chromium","Application","chrome.exe"),(0,j.join)(a,"Microsoft","Edge","Application","msedge.exe"),(0,j.join)(a,"BraveSoftware","Brave-Browser","Application","brave.exe")]):["google-chrome-stable","google-chrome","chromium-browser","chromium","microsoft-edge","brave-browser"]){if(a.includes("/")||a.includes("\\")){if((0,h.existsSync)(a))return a;continue}let b=function(a){let b="win32"===process.platform?"where":"which";try{return(0,f.execFileSync)(b,[a],{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/).map(a=>a.trim()).find(Boolean)||null}catch{return null}}(a);if(b)return b}return null}();if(b)return b;throw Error("Chrome/Chromium not found. Install a supported browser or set PUPPETEER_EXECUTABLE_PATH.")}(),defaultViewport:B,args:["--disable-dev-shm-usage","--disable-background-networking","--no-first-run","--no-default-browser-check"]})),this.browserPromise}getState(a){let b=this.states.get(a);return b||(b={sessionId:a,context:null,page:null,destroying:!1,activeFrameId:null,selectedElement:null,consoleLogs:[],networkLogs:[],lastError:null,frameIds:new WeakMap,requestStarts:new WeakMap,frameSequence:0,bridgePreview:null,requestInterceptionEnabled:!1},this.states.set(a,b)),b}async ensureContext(a,b){return a.context&&!a.context.closed||(a.context=await b.createBrowserContext()),a.context}async destroySession(a,b={}){let c=this.states.get(a);if(!c||c.destroying)return;c.destroying=!0;let d=c.page,e=c.context;try{!1!==b.closePage&&d&&!d.isClosed()&&await d.close().catch(()=>{}),e&&!e.closed&&await e.close().catch(()=>{})}finally{this.states.delete(a)}}ensureFrameId(a,b){let c=a.frameIds.get(b);if(c)return c;let d=`frame-${++a.frameSequence}`;return a.frameIds.set(b,d),d}async configureBridgePreview(a,b,c){let d=this.getState(a);d.bridgePreview=b&&c?{...b,forwardedHeaders:Object.fromEntries(new Headers(c).entries())}:null,d.page&&!d.page.isClosed()&&await this.syncRequestInterception(d,d.page)}async syncRequestInterception(a,b,c){let d="bridge"===v(c??b.url(),a.bridgePreview);a.requestInterceptionEnabled!==d&&(await b.setRequestInterception(d),a.requestInterceptionEnabled=d)}async handleBridgePreviewRequest(a,b){let c,d=a.bridgePreview;if(!d)return void await b.continue();try{c=new URL(b.url())}catch{await b.abort("blockedbyclient");return}if("http:"!==c.protocol&&"https:"!==c.protocol||!d.allowedOrigins.includes(c.origin))return void await b.abort("blockedbyclient");let e="GET"===b.method()||"HEAD"===b.method()?null:b.postData()??null,f=await (0,n.LN)(d.bridgeId,d.forwardedHeaders,{sessionId:d.sessionId,method:b.method(),url:c.toString(),headers:function(a){let b={};for(let[c,d]of Object.entries(a)){let a=c.trim().toLowerCase();a&&"host"!==a&&"connection"!==a&&"proxy-connection"!==a&&"keep-alive"!==a&&"transfer-encoding"!==a&&"content-length"!==a&&"accept-encoding"!==a&&(b[a]=d)}return b}(b.headers()),bodyBase64:e?g.Buffer.from(e).toString("base64"):null});await b.respond({status:f.status,headers:f.headers,body:f.bodyBase64?g.Buffer.from(f.bodyBase64,"base64"):g.Buffer.alloc(0)})}attachListeners(a,b){b.on("console",b=>{this.captureConsole(a,b)}),b.on("pageerror",b=>{let c=b instanceof Error?b.message:String(b);x(a.consoleLogs,{id:y("pageerror"),kind:"pageerror",level:"error",message:c,timestamp:new Date().toISOString()}),a.lastError=c}),b.on("request",b=>{a.requestStarts.set(b,Date.now()),a.requestInterceptionEnabled&&this.handleBridgePreviewRequest(a,b).catch(async c=>{a.lastError=c instanceof Error?c.message:"Bridge preview request failed",x(a.networkLogs,{id:y("preview-request"),kind:"network",level:"error",message:a.lastError,timestamp:new Date().toISOString(),url:b.url(),method:b.method(),status:null,resourceType:b.resourceType()});try{await b.abort("failed")}catch{}})}),b.on("response",b=>{this.captureResponse(a,b)}),b.on("requestfailed",b=>{x(a.networkLogs,{id:y("requestfailed"),kind:"network",level:"error",message:b.failure()?.errorText??"Request failed",timestamp:new Date().toISOString(),url:b.url(),method:b.method(),status:null,resourceType:b.resourceType()})}),b.on("framenavigated",c=>{let d=this.ensureFrameId(a,c);c===b.mainFrame()&&(a.activeFrameId??=d),a.selectedElement?.frameId===d&&(a.selectedElement=null)}),b.on("close",()=>{this.destroySession(a.sessionId,{closePage:!1})})}captureConsole(a,b){let c=b.location();x(a.consoleLogs,{id:y("console"),kind:"console",level:b.type(),message:z(b.text()),timestamp:new Date().toISOString(),url:c.url??null})}captureResponse(a,b){let c=b.request();x(a.networkLogs,{id:y("network"),kind:"network",level:b.ok()?"info":"error",message:`${c.method()} ${b.status()} ${z(b.statusText())}`.trim(),timestamp:new Date().toISOString(),url:b.url(),method:c.method(),status:b.status(),resourceType:c.resourceType()})}async ensurePage(a){let b=await this.getBrowser(),c=this.getState(a);if(c.page&&!c.page.isClosed())return await this.syncRequestInterception(c,c.page),{state:c,page:c.page};let d=await this.ensureContext(c,b),e=await d.newPage();return await e.setViewport(B),e.setDefaultNavigationTimeout(3e4),e.setDefaultTimeout(15e3),this.attachListeners(c,e),await this.syncRequestInterception(c,e),c.page=e,c.activeFrameId=this.ensureFrameId(c,e.mainFrame()),c.selectedElement=null,c.lastError=null,{state:c,page:e}}collectFrames(a,b){let c=b.frames().map(c=>{let d=this.ensureFrameId(a,c),e=c.parentFrame();return{id:d,name:c.name()||(c===b.mainFrame()?"Main frame":"Untitled frame"),url:c.url(),parentId:e?this.ensureFrameId(a,e):null,isMain:c===b.mainFrame()}});return c.some(b=>b.id===a.activeFrameId)||(a.activeFrameId=c.find(a=>a.isMain)?.id??c[0]?.id??null),a.selectedElement&&!c.some(b=>b.id===a.selectedElement?.frameId)&&(a.selectedElement=null),c}resolveFrame(a,b,c){let d=c??a.activeFrameId,e=b.frames();return d?e.find(b=>this.ensureFrameId(a,b)===d)??b.mainFrame():b.mainFrame()}async navigationProducedUsablePage(a,b,c,d){if(!(d instanceof Error?d.message:String(d)).toLowerCase().includes("net::err_aborted"))return!1;let e=a.url();if("about:blank"===e||e===c&&!w(e,b)||!w(e,b))return!1;try{let b=await a.evaluate(()=>document.readyState);return"interactive"===b||"complete"===b}catch{return!1}}async snapshotElement(a,b,c){return a.evaluate(({selector:a,point:b})=>{var c,d;let e,f,g,h;function i(a){return(a??"").replace(/\s+/g," ").trim()}let j=null;return("string"==typeof a&&a.trim()?j=document.querySelector(a):b&&(j=document.elementFromPoint(b.x,b.y)),j)?(c=j,e=i(c.outerHTML).slice(0,400),f=i(c.textContent),g=c.getBoundingClientRect(),h=[...c.attributes].reduce((a,b)=>(a&&Object.keys(a).length>=12||(a[b.name]=b.value),a),{}),{selector:function(a){let b=[],c=a;for(;c&&b.length<5;){let a=function(a){let b=a.tagName.toLowerCase(),c=i(a.getAttribute("id"));if(c)return`#${CSS.escape(c)}`;let d=[...a.classList].slice(0,2).map(a=>`.${CSS.escape(a)}`).join(""),e="",f=a.parentElement;if(f){let b=[...f.children].filter(b=>b.tagName===a.tagName);b.length>1&&(e=`:nth-of-type(${b.indexOf(a)+1})`)}return`${b}${d}${e}`}(c);if(b.unshift(a),a.startsWith("#"))break;c=c.parentElement}return b.join(" > ")}(c),tag:c.tagName.toLowerCase(),text:f.slice(0,220),role:function(a){let b=i(a.getAttribute("role"));if(b)return b;let c=a.tagName.toLowerCase();return"button"===c?"button":"a"===c&&a.hasAttribute("href")?"link":"input"===c?(a.getAttribute("type")??"textbox").toLowerCase():null}(c),name:(d=f.slice(0,220),i(c.getAttribute("aria-label")??c.getAttribute("title")??c.getAttribute("placeholder")??c.getAttribute("alt")??d)||null),interactive:function(a){if(!(a instanceof HTMLElement))return!1;let b=a.tagName.toLowerCase();return!!(["button","input","select","textarea","summary"].includes(b)||"a"===b&&a.hasAttribute("href")||a.hasAttribute("contenteditable")||a.hasAttribute("onclick")||(a.getAttribute("role")??"").match(/button|link|tab|checkbox|radio|switch|textbox|menuitem/i))||a.tabIndex>=0}(c),id:i(c.getAttribute("id"))||null,classes:[...c.classList].slice(0,6),htmlPreview:e,bounds:{x:g.x,y:g.y,width:g.width,height:g.height},attributes:h}):null},{selector:b,point:c})}async connect(a,b){let{state:c,page:d}=await this.ensurePage(a),e=function(a){let b,c=!(b=a.trim())||D.test(b)?b:E.test(b)?`http://${b}`:b;try{let a=new URL(c),b=a.toString(),d=q(a.hostname),e=a.protocol.toLowerCase();if("http:"!==e&&"https:"!==e)throw Error(`Navigation blocked: only http and https URLs are allowed. Got protocol "${a.protocol}".`);if(r(d)){let a=new Set([b]);for(let c of C){let d=new URL(b);d.hostname=c,a.add(d.toString())}return[...a]}return[b]}catch(a){if(a instanceof Error&&a.message.startsWith("Navigation blocked:"))throw a;throw Error(`Navigation blocked: could not parse "${c}" as a valid URL.`)}}(b),f=null;for(let a of e){let b=v(a,c.bridgePreview);if("blocked"===b){f=Error("Bridge preview only allows navigation to the session's reported local dev server origin.");continue}let e=d.url();try{"direct"===b&&await u(a),await this.syncRequestInterception(c,d,a),await d.goto(a,{waitUntil:"domcontentloaded"}),await this.syncRequestInterception(c,d),c.selectedElement=null,c.lastError=null,c.activeFrameId=this.ensureFrameId(c,d.mainFrame());return}catch(b){if(await this.navigationProducedUsablePage(d,a,e,b)){await this.syncRequestInterception(c,d),c.selectedElement=null,c.lastError=null,c.activeFrameId=this.ensureFrameId(c,d.mainFrame());return}f=b}}throw c.lastError=f instanceof Error?f.message:"Failed to connect preview",f??Error("Failed to connect preview")}async runCommand(a,b){switch(b.command){case"connect":case"navigate":await this.connect(a,b.url);return;case"reload":{let{state:b,page:c}=await this.ensurePage(a);try{await c.reload({waitUntil:"domcontentloaded"}),b.lastError=null}catch(a){throw b.lastError=a instanceof Error?a.message:"Failed to reload preview",a}return}case"goBack":{let{state:b,page:c}=await this.ensurePage(a);try{await this.syncRequestInterception(b,c),await c.goBack({waitUntil:"domcontentloaded",timeout:1500}),await this.syncRequestInterception(b,c),b.selectedElement=null,b.lastError=null,b.activeFrameId=this.ensureFrameId(b,c.mainFrame())}catch(a){throw b.lastError=a instanceof Error?a.message:"Failed to go back",a}return}case"goForward":{let{state:b,page:c}=await this.ensurePage(a);try{await this.syncRequestInterception(b,c),await c.goForward({waitUntil:"domcontentloaded",timeout:1500}),await this.syncRequestInterception(b,c),b.selectedElement=null,b.lastError=null,b.activeFrameId=this.ensureFrameId(b,c.mainFrame())}catch(a){throw b.lastError=a instanceof Error?a.message:"Failed to go forward",a}return}case"selectFrame":{let{state:c,page:d}=await this.ensurePage(a),e=this.resolveFrame(c,d,b.frameId);c.activeFrameId=this.ensureFrameId(c,e),c.selectedElement=null,c.lastError=null;return}case"clickAtPoint":{let{state:c,page:d}=await this.ensurePage(a);c.selectedElement=null,c.lastError=null;let e=d.waitForNavigation({waitUntil:"domcontentloaded",timeout:1500}).catch(()=>null);await d.mouse.click(b.x,b.y),await e,await d.waitForNetworkIdle({idleTime:250,timeout:1e3}).catch(()=>null);return}case"typeText":{let{state:c,page:d}=await this.ensurePage(a);if(!b.text)return;await d.keyboard.type(b.text),c.lastError=null;return}case"pressKey":{let{state:c,page:d}=await this.ensurePage(a);c.lastError=null;let e=d.waitForNavigation({waitUntil:"domcontentloaded",timeout:1500}).catch(()=>null);await d.keyboard.press(b.key),await e,await d.waitForNetworkIdle({idleTime:250,timeout:1e3}).catch(()=>null);return}case"selectAtPoint":{let{state:c,page:d}=await this.ensurePage(a),e=this.resolveFrame(c,d,c.activeFrameId);if(e!==d.mainFrame())throw Error("Point selection is only available for the main frame. Pick nested frame elements from the DOM list.");let f=await this.snapshotElement(e,void 0,{x:b.x,y:b.y});if(!f)throw Error("No element found at the selected point");c.selectedElement={...f,frameId:this.ensureFrameId(c,e),frameName:e.name()||"Main frame",frameUrl:e.url()},c.lastError=null;return}case"selectBySelector":{let{state:c,page:d}=await this.ensurePage(a),e=this.resolveFrame(c,d,b.frameId),f=await this.snapshotElement(e,b.selector);if(!f)throw Error(`Element not found for selector: ${b.selector}`);c.selectedElement={...f,frameId:this.ensureFrameId(c,e),frameName:e.name()||(e===d.mainFrame()?"Main frame":"Frame"),frameUrl:e.url()},c.activeFrameId=this.ensureFrameId(c,e),c.lastError=null;return}default:return}}async inspectDom(a,b,c=!1){let{state:d,page:e}=await this.ensurePage(a),f=this.resolveFrame(d,e,b),g=await f.evaluate(({interactiveOnly:a,limit:b})=>{function c(a){return(a??"").replace(/\s+/g," ").trim()}let d=document.body??document.documentElement,e=document.createTreeWalker(d,NodeFilter.SHOW_ELEMENT),f=[],g=0;for(;e.nextNode();){g+=1;let d=e.currentNode;if(!(d instanceof Element))continue;let h=function(a){if(!(a instanceof HTMLElement))return!1;let b=a.tagName.toLowerCase();return!!(["button","input","select","textarea","summary"].includes(b)||"a"===b&&a.hasAttribute("href")||a.hasAttribute("contenteditable")||(a.getAttribute("role")??"").match(/button|link|tab|checkbox|radio|switch|textbox|menuitem/i))||a.tabIndex>=0}(d);if(a&&!h)continue;let i=c(d.textContent).slice(0,220),j=d.getBoundingClientRect();if(f.push({selector:function(a){let b=[],d=a;for(;d&&b.length<5;){let a=function(a){let b=a.tagName.toLowerCase(),d=c(a.getAttribute("id"));if(d)return`#${CSS.escape(d)}`;let e=[...a.classList].slice(0,2).map(a=>`.${CSS.escape(a)}`).join(""),f="",g=a.parentElement;if(g){let b=[...g.children].filter(b=>b.tagName===a.tagName);b.length>1&&(f=`:nth-of-type(${b.indexOf(a)+1})`)}return`${b}${e}${f}`}(d);if(b.unshift(a),a.startsWith("#"))break;d=d.parentElement}return b.join(" > ")}(d),tag:d.tagName.toLowerCase(),text:i,role:function(a){let b=c(a.getAttribute("role"));if(b)return b;let d=a.tagName.toLowerCase();return"button"===d?"button":"a"===d&&a.hasAttribute("href")?"link":"input"===d?(a.getAttribute("type")??"textbox").toLowerCase():null}(d),name:c(d.getAttribute("aria-label")??d.getAttribute("title")??d.getAttribute("placeholder")??d.getAttribute("alt")??i)||null,interactive:h,id:c(d.getAttribute("id"))||null,classes:[...d.classList].slice(0,6),htmlPreview:c(d.outerHTML).slice(0,320),bounds:{x:j.x,y:j.y,width:j.width,height:j.height}}),f.length>=b)break}return{nodes:f,truncated:f.length>=b||g>f.length}},{interactiveOnly:c,limit:250});return{frameId:this.ensureFrameId(d,f),nodes:g.nodes,truncated:g.truncated}}async takeScreenshot(a){let{page:b}=await this.ensurePage(a);return"about:blank"===b.url()?null:b.screenshot({type:"png"})}async getNavigationCapabilities(a){if(!a||a.isClosed()||"about:blank"===a.url())return{canGoBack:!1,canGoForward:!1};let b=null;try{b=await a.createCDPSession();let c=await b.send("Page.getNavigationHistory");return{canGoBack:c.currentIndex>0,canGoForward:c.currentIndex<c.entries.length-1}}catch{return{canGoBack:!1,canGoForward:!1}}finally{await b?.detach().catch(()=>null)}}async getStatus(a,b){let c=this.states.get(a)??null,d=c?.page&&!c.page.isClosed()?c.page:null,e=c&&d?this.collectFrames(c,d):[],{canGoBack:f,canGoForward:g}=await this.getNavigationCapabilities(d),h=null;if(d&&"about:blank"!==d.url())try{h=await d.title()}catch{h=null}return{connected:!!(d&&"about:blank"!==d.url()),candidateUrls:b,currentUrl:d&&"about:blank"!==d.url()?d.url():null,title:h,tunnelUrl:null,tunnelLocalOrigin:null,canGoBack:f,canGoForward:g,frames:e,activeFrameId:c?.activeFrameId??null,selectedElement:c?.selectedElement??null,consoleLogs:c?.consoleLogs??[],networkLogs:c?.networkLogs??[],lastError:c?.lastError??null,screenshotKey:`${Date.now()}`}}constructor(){this.browserPromise=null,this.states=new Map}}function A(){return!function(){let a=(0,m._)();if(!a)return!1;try{let b=new URL(a).hostname.toLowerCase();return"localhost"===b||"127.0.0.1"===b||"0.0.0.0"===b||"::1"===b||"[::1]"===b}catch{return!1}}()?(0,o.k)():(F._conductorPreviewBrowserManager||(F._conductorPreviewBrowserManager=new G),F._conductorPreviewBrowserManager)}d()}catch(a){d(a)}})},36026:(a,b,c)=>{function d(a){let b=a?.trim();if(!b)return null;try{let a=new URL(b);if("http:"!==a.protocol&&"https:"!==a.protocol)return null;return a.toString()}catch{return null}}function e(a){let b=a?.trim();if(!b)return null;let c=Number.parseInt(b,10);return!Number.isInteger(c)||c<1||c>65535?null:c}function f(){let a=d(process.env.CONDUCTOR_BACKEND_URL);if(a)return a;let b=d(process.env.NEXT_PUBLIC_CONDUCTOR_BACKEND_URL);if(b)return b;let c=e(process.env.CONDUCTOR_BACKEND_PORT);if(null!==c)return`http://127.0.0.1:${c}`;let f=e(process.env.NEXT_PUBLIC_CONDUCTOR_BACKEND_PORT);return null!==f?`http://127.0.0.1:${f}`:null}function g(){let a=f();if(!a)throw Error("Rust backend URL is not configured");return a}c.d(b,{B:()=>g,_:()=>f})},42599:(a,b,c)=>{c.d(b,{Ix:()=>s});var d=c(51455),e=c(94842),f=c(36026),g=c(91752);let h=/(?:127\.0\.0\.1|0\.0\.0\.0|localhost|::1|\[::1\])/i,i=/\bhttps?:\/\/[^\s"'<>`]+/gi,j=/^[a-z][a-z\d+.-]*:\/\//i,k=/(?<!:\/\/)(?:localhost|127\.0\.0\.1|0\.0\.0\.0|\[::1\]|::1)(?::\d+)?(?:\/[^\s"'<>`]*)?/gi,l=new Set(["previewUrl","devServerUrl","devServerURL","localUrl"]),m={devServerUrl:0,devServerURL:0,localUrl:10,previewUrl:50};function n(a,b){let c=a[b];return"string"==typeof c?c:null}async function o(a,b={}){let c,d=a.bridgeId?.trim()||(0,g.DW)(a.id)?.bridgeId||null;try{if(d){if(!b.request)return[];c=await (0,e.nl)(b.request,d,"/api/repositories",{pathOverride:"/api/repositories",bodyOverride:b.requestBody})}else{let a=(0,f.B)();c=await fetch(new URL("/api/repositories",a),{cache:"no-store",headers:b.headers})}}catch{return[]}if(!c.ok)return[];let h=await c.json().catch(()=>null),i=(Array.isArray(h?.repositories)?h.repositories:[]).find(b=>b&&"object"==typeof b&&n(b,"id")===a.projectId);if(!i||"object"!=typeof i)return[];let j=function(a){var b,c;let d,e,f=n(a,"devServerUrl")?.trim();if(f)return f;let g=n(a,"devServerPort")?.trim();if(!g)return null;let h=!0===a.devServerHttps?"https":"http",i=(b=n(a,"devServerHost"),(d=b?.trim())?"0.0.0.0"===d?"127.0.0.1":d:"127.0.0.1"),j=(c=n(a,"devServerPath"),(e=c?.trim())&&"/"!==e?e.startsWith("/")?e:`/${e}`:"");return`${h}://${i}:${g}${j}`}(i);return j?[j]:[]}function p(a,b=""){let c=(0,g.DW)(a),d=c?.sessionId??a;return`/api/sessions/${encodeURIComponent(d)}${b}`}async function q(a,b,c={}){let d=(0,g.DW)(a);if(d){if(!c.request)throw Error("Bridge preview lookup requires the incoming request context");return(0,e.nl)(c.request,d.bridgeId,b,{pathOverride:b,bodyOverride:c.requestBody})}return fetch(new URL(b,(0,f.B)()),{cache:"no-store",headers:c.headers})}async function r(a,b={}){let c=(0,g.DW)(a),d=await q(a,p(a),b);if(404===d.status)return null;if(!d.ok)throw Error(`Failed to fetch session ${a}: ${d.status}`);let e=await d.json();return c?(0,g.Vk)(e,c.bridgeId):e}async function s(a,b={}){try{var c,d;let e=await r(a,b);if(!e)return{session:null,candidateUrls:[],error:null,bridgePreview:null};let f=await z(e,b);return{session:e,candidateUrls:f,error:(c=e,d=f,!c.bridgeId?.trim()||d.length>0?null:[c.pr?.previewUrl??null,c.metadata.previewUrl??null,c.metadata.devServerUrl??null,c.metadata.devServerURL??null,c.metadata.localUrl??null,c.metadata.url??null,c.summary].some(a=>v(a).some(a=>w(a)))?"Bridge preview could not find a paired-device local dev server URL for this session.":"Bridge preview uses the paired device's local dev server, but this session did not report one."),bridgePreview:function(a,b){let c=a.bridgeId?.trim();if(!c)return null;let d=[...new Set(b.filter(a=>w(a)).map(a=>{try{return new URL(a).origin}catch{return null}}).filter(a=>!!a))];if(0===d.length)return null;let e=(0,g.DW)(a.id);return{bridgeId:c,sessionId:e?.sessionId??a.id,allowedOrigins:d}}(e,f)}}catch(a){return{session:null,candidateUrls:[],error:a instanceof Error?a.message:"Failed to load preview session",bridgePreview:null}}}function t(a){let b=a.trim().replace(/[),.;]+$/,""),c=j.test(b)?b:k.test(b)?`http://${b}`:b;k.lastIndex=0;try{let a=new URL(c);return"0.0.0.0"===a.hostname&&(a.hostname="127.0.0.1"),a.toString()}catch{return c}}async function u(a){try{let b=await (0,d.readFile)(a,"utf8");return v(b)}catch{return[]}}function v(a){return[...a?.match(i)??[],...a?.match(k)??[]].map(t)}function w(a){try{let b=new URL(a);return h.test(b.hostname)}catch{return!1}}function x(a,b,c,d,e=!1){if(!b?.trim())return;let f=t(b);if(!f||function(a,b){try{let c=new URL(a);if(b){let a=new URL(b);if(c.origin===a.origin)return!0}return c.pathname.startsWith("/api/")}catch{return!1}}(f,d))return;try{let a=new URL(f);if("http:"!==a.protocol&&"https:"!==a.protocol||!e&&!w(f))return}catch{return}let g=a.get(f);(void 0===g||c<g)&&a.set(f,c)}async function y(a,b={}){try{let c=await q(a,p(a,"/output?lines=400"),b);if(!c.ok)return"";let d=await c.json().catch(()=>null);return"string"==typeof d?.output?d.output:""}catch{return""}}async function z(a,b={}){let c=(0,f._)()??"",d=new Map;for(let[e,f]of(b.previewUrlHint?.trim()&&x(d,b.previewUrlHint,-10,c,!0),a.pr?.previewUrl?.trim()&&x(d,a.pr.previewUrl,50,c,!0),a.metadata.devServerUrl?.trim()&&x(d,a.metadata.devServerUrl,0,c,!0),Object.entries(a.metadata)))if("string"==typeof f)for(let a of(l.has(e)&&f.trim()&&x(d,f,m[e]??30,c,!0),v(f)))x(d,a,60,c);for(let b of v(a.summary))x(d,b,70,c);let e=a.metadata.devServerLog?.trim();if(e)for(let a of(await u(e)))x(d,a,40,c);for(let e of v(await y(a.id,b)))x(d,e,80,c);if(![...d.keys()].some(a=>w(a)))for(let e of(await o(a,b)))x(d,e,20,c,!0);return[...d.entries()].sort(([a,b],[c,d])=>{if(b!==d)return b-d;let e=+!w(a),f=+!w(c);return e!==f?e-f:a.localeCompare(c)}).map(([a])=>a)}},59506:(a,b,c)=>{c.d(b,{k:()=>i});var d=c(4573),e=c(46224);function f(a,b=null){return{connected:!1,candidateUrls:a,currentUrl:null,title:null,tunnelUrl:null,tunnelLocalOrigin:null,canGoBack:!1,canGoForward:!1,frames:[],activeFrameId:null,selectedElement:null,consoleLogs:[],networkLogs:[],lastError:b,screenshotKey:`${Date.now()}`}}class g{async configureBridgePreview(a,b,c){let d=(0,e.y)(),f=b&&c&&d?{...b,relayUrl:d,forwardedHeaders:Object.fromEntries(new Headers(c).entries())}:null;if(JSON.stringify(this.bridgePreviewConfigs.get(a)??null)===JSON.stringify(f))return;this.bridgePreviewConfigs.set(a,f);let g=this.remoteSessionIds.get(a);if(g&&this.isConfigured()){this.remoteSessionIds.delete(a);try{await fetch(`${this.workerUrl}/sessions/${encodeURIComponent(g)}`,{method:"DELETE",headers:this.buildHeaders(),cache:"no-store"})}catch{}}}async destroySession(a){let b=this.remoteSessionIds.get(a);if(this.remoteSessionIds.delete(a),this.bridgePreviewConfigs.delete(a),b&&this.isConfigured())try{await fetch(`${this.workerUrl}/sessions/${encodeURIComponent(b)}`,{method:"DELETE",headers:this.buildHeaders(),cache:"no-store"})}catch{}}async runCommand(a,b){let c=await this.sendCommand(a,b,{createIfMissing:!0});if("error"===c.kind)throw Error(c.message)}async inspectDom(a,b,c=!1){let d=await this.sendCommand(a,{command:"dom",frameId:b,interactiveOnly:c},{createIfMissing:!0});if("dom"!==d.kind)throw Error("error"===d.kind?d.message:"Unexpected preview worker DOM response");return d}async takeScreenshot(a){if(!this.remoteSessionIds.has(a))return null;let b=await this.sendCommand(a,{command:"screenshot"},{createIfMissing:!1});if("error"===b.kind){if(b.message.includes("not connected"))return null;throw Error(b.message)}if("screenshot"!==b.kind)throw Error("Unexpected preview worker screenshot response");return d.Buffer.from(b.imageBase64,"base64")}async getStatus(a,b){if(!this.remoteSessionIds.has(a))return f(b,this.configurationError());try{let c=await this.sendCommand(a,{command:"status",candidateUrls:b},{createIfMissing:!1});if("status"===c.kind)return c;return f(b,"error"===c.kind?c.message:"Preview service is unavailable")}catch(a){return f(b,a instanceof Error?a.message:"Preview service is unavailable")}}async sendCommand(a,b,c){let d=this.configurationError();if(d)return{kind:"error",message:d};let e=this.remoteSessionIds.get(a)??null;if(!e){if(!c.createIfMissing)return{kind:"error",message:"Preview is not connected"};e=await this.createRemoteSession(a)}try{let d=await fetch(`${this.workerUrl}/sessions/${encodeURIComponent(e)}/command`,{method:"POST",headers:this.buildHeaders(),body:JSON.stringify(b),cache:"no-store"}),f=await d.json();if(404===d.status&&!1!==c.retry)return this.remoteSessionIds.delete(a),await this.sendCommand(a,b,{createIfMissing:c.createIfMissing,retry:!1});if(!d.ok||"error"===f.kind)return"error"===f.kind?f:{kind:"error",message:"Preview worker request failed"};return f}catch(a){throw Error(this.networkErrorMessage(a))}}async createRemoteSession(a){let b=this.configurationError();if(b)throw Error(b);let c={clientSessionId:a,bridgePreview:this.bridgePreviewConfigs.get(a)??null};try{let b=await fetch(`${this.workerUrl}/sessions`,{method:"POST",headers:this.buildHeaders(),body:JSON.stringify(c),cache:"no-store"}),d=await b.json();if(!b.ok||!d.sessionId)throw Error(d.error||"Preview worker session creation failed");return this.remoteSessionIds.set(a,d.sessionId),d.sessionId}catch(a){throw Error(this.networkErrorMessage(a))}}buildHeaders(){return{Authorization:`Bearer ${this.workerApiKey}`,"Content-Type":"application/json"}}configurationError(){return this.workerUrl&&this.workerApiKey?null:"Preview worker is not configured"}isConfigured(){return null===this.configurationError()}networkErrorMessage(a){let b,c=a instanceof Error?a.message:"Preview service is unavailable";return(b=c.trim().toLowerCase())&&("preview worker is not configured"===b||!("fetch failed"===b||b.includes("econnrefused")||b.includes("enotfound")||b.includes("eai_again")||b.includes("networkerror")||b.includes("socket hang up")))?c:"Preview service is unavailable"}constructor(){this.workerUrl=function(a){let b=a?.trim();if(!b)return null;try{let a=new URL(b);if("http:"!==a.protocol&&"https:"!==a.protocol)return null;return a.toString().replace(/\/$/,"")}catch{return null}}(process.env.CONDUCTOR_PREVIEW_WORKER_URL),this.workerApiKey=process.env.CONDUCTOR_PREVIEW_WORKER_KEY?.trim()||null,this.remoteSessionIds=new Map,this.bridgePreviewConfigs=new Map}}let h=globalThis;function i(){return h._conductorPreviewWorkerClient||(h._conductorPreviewWorkerClient=new g),h._conductorPreviewWorkerClient}},70209:(a,b,c)=>{c.d(b,{X_:()=>m,Z$:()=>h,zP:()=>l});var d=c(77873),e=c(36026);let f=new Set(["connection","host","content-length","expect","upgrade","proxy-authorization","proxy-authenticate","te","trailers","transfer-encoding","accept-encoding","x-conductor-proxy-authorized","x-conductor-access-authenticated","x-conductor-access-role","x-conductor-access-email","x-conductor-access-provider","x-conductor-proxy-secret"]),g=new Set(["connection","content-length","content-encoding","keep-alive","transfer-encoding"]);function h(){return null!==(0,e._)()}function i(a){let b=new Headers;return a.headers.forEach((a,c)=>{g.has(c.toLowerCase())||b.set(c,a)}),b}async function j(a,b,c={}){let d=(0,e.B)(),g=new URL(a.url),h=new URL(b,d);h.search=g.search;let k=new Headers;a.headers.forEach((a,b)=>{f.has(b.toLowerCase())||k.set(b,a)}),c.headers&&new Headers(c.headers).forEach((a,b)=>{k.set(b,a)}),k.set("x-forwarded-proto",g.protocol.replace(":","")),k.set("x-forwarded-host",g.host);let l={method:a.method,headers:k,redirect:"manual",cache:"no-store"};if("GET"!==a.method&&"HEAD"!==a.method){let b=await a.arrayBuffer();b.byteLength>0&&(l.body=b)}let m=await fetch(h,l),n=i(m);return new Response(m.body,{status:m.status,statusText:m.statusText,headers:n})}async function k(a,b,c={}){let d,g=(0,e.B)(),h=new URL(a.url),j=new URL(b,g);j.search=h.search;let l=new Headers;a.headers.forEach((a,b)=>{f.has(b.toLowerCase())||l.set(b,a)}),c.headers&&new Headers(c.headers).forEach((a,b)=>{l.set(b,a)}),l.set("Accept","text/event-stream"),l.set("Cache-Control","no-cache"),l.set("x-forwarded-proto",h.protocol.replace(":","")),l.set("x-forwarded-host",h.host);let m=await fetch(j,{method:"GET",headers:l,redirect:"manual",cache:"no-store",signal:a.signal});return m.ok&&m.body?new Response(m.body,{status:m.status,statusText:m.statusText,headers:((d=i(m)).set("Content-Type","text/event-stream"),d.set("Cache-Control","no-cache, no-transform"),d.set("Connection","keep-alive"),d.set("X-Accel-Buffering","no"),d)}):new Response(m.body,{status:m.status,statusText:m.statusText,headers:i(m)})}async function l(a,b,c={}){if(!h())return d.NextResponse.json({error:"Rust backend URL is not configured"},{status:503});try{return await j(a,b,c)}catch(a){return d.NextResponse.json({error:a instanceof Error?a.message:"Failed to reach Rust backend"},{status:502})}}async function m(a,b,c={}){if(!h())return d.NextResponse.json({error:"Rust backend URL is not configured"},{status:503});try{return await k(a,b,c)}catch(a){return d.NextResponse.json({error:a instanceof Error?a.message:"Failed to reach Rust backend"},{status:502})}}}};