parasor 0.1.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 (633) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +208 -0
  3. package/THIRD-PARTY-NOTICES.md +138 -0
  4. package/bin/parasor.mjs +3 -0
  5. package/node_modules/@parasor/shared/dist/client.d.ts +8 -0
  6. package/node_modules/@parasor/shared/dist/client.d.ts.map +1 -0
  7. package/node_modules/@parasor/shared/dist/client.js +2 -0
  8. package/node_modules/@parasor/shared/dist/client.js.map +1 -0
  9. package/node_modules/@parasor/shared/dist/drops.d.ts +24 -0
  10. package/node_modules/@parasor/shared/dist/drops.d.ts.map +1 -0
  11. package/node_modules/@parasor/shared/dist/drops.js +2 -0
  12. package/node_modules/@parasor/shared/dist/drops.js.map +1 -0
  13. package/node_modules/@parasor/shared/dist/file-uploads.d.ts +56 -0
  14. package/node_modules/@parasor/shared/dist/file-uploads.d.ts.map +1 -0
  15. package/node_modules/@parasor/shared/dist/file-uploads.js +13 -0
  16. package/node_modules/@parasor/shared/dist/file-uploads.js.map +1 -0
  17. package/node_modules/@parasor/shared/dist/ide-commands.d.ts +8 -0
  18. package/node_modules/@parasor/shared/dist/ide-commands.d.ts.map +1 -0
  19. package/node_modules/@parasor/shared/dist/ide-commands.js +59 -0
  20. package/node_modules/@parasor/shared/dist/ide-commands.js.map +1 -0
  21. package/node_modules/@parasor/shared/dist/pane-commands.d.ts +7 -0
  22. package/node_modules/@parasor/shared/dist/pane-commands.d.ts.map +1 -0
  23. package/node_modules/@parasor/shared/dist/pane-commands.js +47 -0
  24. package/node_modules/@parasor/shared/dist/pane-commands.js.map +1 -0
  25. package/node_modules/@parasor/shared/dist/pane-model.d.ts +63 -0
  26. package/node_modules/@parasor/shared/dist/pane-model.d.ts.map +1 -0
  27. package/node_modules/@parasor/shared/dist/pane-model.js +89 -0
  28. package/node_modules/@parasor/shared/dist/pane-model.js.map +1 -0
  29. package/node_modules/@parasor/shared/dist/panes.d.ts +33 -0
  30. package/node_modules/@parasor/shared/dist/panes.d.ts.map +1 -0
  31. package/node_modules/@parasor/shared/dist/panes.js +2 -0
  32. package/node_modules/@parasor/shared/dist/panes.js.map +1 -0
  33. package/node_modules/@parasor/shared/dist/runtime.d.ts +180 -0
  34. package/node_modules/@parasor/shared/dist/runtime.d.ts.map +1 -0
  35. package/node_modules/@parasor/shared/dist/runtime.js +2 -0
  36. package/node_modules/@parasor/shared/dist/runtime.js.map +1 -0
  37. package/node_modules/@parasor/shared/dist/state.d.ts +192 -0
  38. package/node_modules/@parasor/shared/dist/state.d.ts.map +1 -0
  39. package/node_modules/@parasor/shared/dist/state.js +10 -0
  40. package/node_modules/@parasor/shared/dist/state.js.map +1 -0
  41. package/node_modules/@parasor/shared/dist/terminal.d.ts +191 -0
  42. package/node_modules/@parasor/shared/dist/terminal.d.ts.map +1 -0
  43. package/node_modules/@parasor/shared/dist/terminal.js +174 -0
  44. package/node_modules/@parasor/shared/dist/terminal.js.map +1 -0
  45. package/node_modules/@parasor/shared/dist/types.d.ts +13 -0
  46. package/node_modules/@parasor/shared/dist/types.d.ts.map +1 -0
  47. package/node_modules/@parasor/shared/dist/types.js +13 -0
  48. package/node_modules/@parasor/shared/dist/types.js.map +1 -0
  49. package/node_modules/@parasor/shared/dist/worktree-local-files.d.ts +14 -0
  50. package/node_modules/@parasor/shared/dist/worktree-local-files.d.ts.map +1 -0
  51. package/node_modules/@parasor/shared/dist/worktree-local-files.js +41 -0
  52. package/node_modules/@parasor/shared/dist/worktree-local-files.js.map +1 -0
  53. package/node_modules/@parasor/shared/dist/ws-events.d.ts +152 -0
  54. package/node_modules/@parasor/shared/dist/ws-events.d.ts.map +1 -0
  55. package/node_modules/@parasor/shared/dist/ws-events.js +2 -0
  56. package/node_modules/@parasor/shared/dist/ws-events.js.map +1 -0
  57. package/node_modules/@parasor/shared/package.json +13 -0
  58. package/package.json +61 -0
  59. package/server/agent-detector/agent-state-store.d.ts +23 -0
  60. package/server/agent-detector/agent-state-store.d.ts.map +1 -0
  61. package/server/agent-detector/agent-state-store.js +110 -0
  62. package/server/agent-detector/agent-state-store.js.map +1 -0
  63. package/server/agent-detector/detector.d.ts +80 -0
  64. package/server/agent-detector/detector.d.ts.map +1 -0
  65. package/server/agent-detector/detector.js +219 -0
  66. package/server/agent-detector/detector.js.map +1 -0
  67. package/server/agent-detector/event-map.d.ts +25 -0
  68. package/server/agent-detector/event-map.d.ts.map +1 -0
  69. package/server/agent-detector/event-map.js +136 -0
  70. package/server/agent-detector/event-map.js.map +1 -0
  71. package/server/agent-detector/manual-agent-tracker.d.ts +19 -0
  72. package/server/agent-detector/manual-agent-tracker.d.ts.map +1 -0
  73. package/server/agent-detector/manual-agent-tracker.js +123 -0
  74. package/server/agent-detector/manual-agent-tracker.js.map +1 -0
  75. package/server/agent-detector/output-eligibility.d.ts +3 -0
  76. package/server/agent-detector/output-eligibility.d.ts.map +1 -0
  77. package/server/agent-detector/output-eligibility.js +39 -0
  78. package/server/agent-detector/output-eligibility.js.map +1 -0
  79. package/server/application/files/errors.d.ts +28 -0
  80. package/server/application/files/errors.d.ts.map +1 -0
  81. package/server/application/files/errors.js +55 -0
  82. package/server/application/files/errors.js.map +1 -0
  83. package/server/application/files/local-filesystem.d.ts +36 -0
  84. package/server/application/files/local-filesystem.d.ts.map +1 -0
  85. package/server/application/files/local-filesystem.js +171 -0
  86. package/server/application/files/local-filesystem.js.map +1 -0
  87. package/server/application/files/project-file-queries.d.ts +16 -0
  88. package/server/application/files/project-file-queries.d.ts.map +1 -0
  89. package/server/application/files/project-file-queries.js +126 -0
  90. package/server/application/files/project-file-queries.js.map +1 -0
  91. package/server/application/integrations/errors.d.ts +16 -0
  92. package/server/application/integrations/errors.d.ts.map +1 -0
  93. package/server/application/integrations/errors.js +31 -0
  94. package/server/application/integrations/errors.js.map +1 -0
  95. package/server/application/integrations/hook-notify.d.ts +32 -0
  96. package/server/application/integrations/hook-notify.d.ts.map +1 -0
  97. package/server/application/integrations/hook-notify.js +118 -0
  98. package/server/application/integrations/hook-notify.js.map +1 -0
  99. package/server/application/integrations/open-url.d.ts +11 -0
  100. package/server/application/integrations/open-url.d.ts.map +1 -0
  101. package/server/application/integrations/open-url.js +23 -0
  102. package/server/application/integrations/open-url.js.map +1 -0
  103. package/server/application/ports.d.ts +11 -0
  104. package/server/application/ports.d.ts.map +1 -0
  105. package/server/application/ports.js +2 -0
  106. package/server/application/ports.js.map +1 -0
  107. package/server/application/workspace/errors.d.ts +21 -0
  108. package/server/application/workspace/errors.d.ts.map +1 -0
  109. package/server/application/workspace/errors.js +21 -0
  110. package/server/application/workspace/errors.js.map +1 -0
  111. package/server/application/workspace/pane-commands.d.ts +47 -0
  112. package/server/application/workspace/pane-commands.d.ts.map +1 -0
  113. package/server/application/workspace/pane-commands.js +193 -0
  114. package/server/application/workspace/pane-commands.js.map +1 -0
  115. package/server/application/workspace/project-commands.d.ts +34 -0
  116. package/server/application/workspace/project-commands.d.ts.map +1 -0
  117. package/server/application/workspace/project-commands.js +81 -0
  118. package/server/application/workspace/project-commands.js.map +1 -0
  119. package/server/application/workspace/project-queries.d.ts +21 -0
  120. package/server/application/workspace/project-queries.d.ts.map +1 -0
  121. package/server/application/workspace/project-queries.js +216 -0
  122. package/server/application/workspace/project-queries.js.map +1 -0
  123. package/server/application/workspace/session-commands.d.ts +24 -0
  124. package/server/application/workspace/session-commands.d.ts.map +1 -0
  125. package/server/application/workspace/session-commands.js +123 -0
  126. package/server/application/workspace/session-commands.js.map +1 -0
  127. package/server/application/workspace/session-queries.d.ts +14 -0
  128. package/server/application/workspace/session-queries.d.ts.map +1 -0
  129. package/server/application/workspace/session-queries.js +47 -0
  130. package/server/application/workspace/session-queries.js.map +1 -0
  131. package/server/application/workspace/worktree-commands.d.ts +98 -0
  132. package/server/application/workspace/worktree-commands.d.ts.map +1 -0
  133. package/server/application/workspace/worktree-commands.js +323 -0
  134. package/server/application/workspace/worktree-commands.js.map +1 -0
  135. package/server/application/workspace/worktree-local-files.d.ts +11 -0
  136. package/server/application/workspace/worktree-local-files.d.ts.map +1 -0
  137. package/server/application/workspace/worktree-local-files.js +223 -0
  138. package/server/application/workspace/worktree-local-files.js.map +1 -0
  139. package/server/application/workspace/worktree-reconcile.d.ts +21 -0
  140. package/server/application/workspace/worktree-reconcile.d.ts.map +1 -0
  141. package/server/application/workspace/worktree-reconcile.js +49 -0
  142. package/server/application/workspace/worktree-reconcile.js.map +1 -0
  143. package/server/auth/origin.d.ts +17 -0
  144. package/server/auth/origin.d.ts.map +1 -0
  145. package/server/auth/origin.js +93 -0
  146. package/server/auth/origin.js.map +1 -0
  147. package/server/auth/pairing-token.d.ts +28 -0
  148. package/server/auth/pairing-token.d.ts.map +1 -0
  149. package/server/auth/pairing-token.js +46 -0
  150. package/server/auth/pairing-token.js.map +1 -0
  151. package/server/auth/token-exchange.d.ts +11 -0
  152. package/server/auth/token-exchange.d.ts.map +1 -0
  153. package/server/auth/token-exchange.js +27 -0
  154. package/server/auth/token-exchange.js.map +1 -0
  155. package/server/auth/token.d.ts +18 -0
  156. package/server/auth/token.d.ts.map +1 -0
  157. package/server/auth/token.js +115 -0
  158. package/server/auth/token.js.map +1 -0
  159. package/server/bootstrap/create-app-server.d.ts +49 -0
  160. package/server/bootstrap/create-app-server.d.ts.map +1 -0
  161. package/server/bootstrap/create-app-server.js +154 -0
  162. package/server/bootstrap/create-app-server.js.map +1 -0
  163. package/server/bootstrap/project-runtime.d.ts +29 -0
  164. package/server/bootstrap/project-runtime.d.ts.map +1 -0
  165. package/server/bootstrap/project-runtime.js +253 -0
  166. package/server/bootstrap/project-runtime.js.map +1 -0
  167. package/server/bootstrap/pty-env.d.ts +3 -0
  168. package/server/bootstrap/pty-env.d.ts.map +1 -0
  169. package/server/bootstrap/pty-env.js +15 -0
  170. package/server/bootstrap/pty-env.js.map +1 -0
  171. package/server/bootstrap/reconcile-state.d.ts +16 -0
  172. package/server/bootstrap/reconcile-state.d.ts.map +1 -0
  173. package/server/bootstrap/reconcile-state.js +73 -0
  174. package/server/bootstrap/reconcile-state.js.map +1 -0
  175. package/server/bootstrap/runtime-loops.d.ts +51 -0
  176. package/server/bootstrap/runtime-loops.d.ts.map +1 -0
  177. package/server/bootstrap/runtime-loops.js +189 -0
  178. package/server/bootstrap/runtime-loops.js.map +1 -0
  179. package/server/bootstrap/runtime-port.d.ts +4 -0
  180. package/server/bootstrap/runtime-port.d.ts.map +1 -0
  181. package/server/bootstrap/runtime-port.js +52 -0
  182. package/server/bootstrap/runtime-port.js.map +1 -0
  183. package/server/bootstrap/safety-gate.d.ts +22 -0
  184. package/server/bootstrap/safety-gate.d.ts.map +1 -0
  185. package/server/bootstrap/safety-gate.js +43 -0
  186. package/server/bootstrap/safety-gate.js.map +1 -0
  187. package/server/bootstrap/shutdown-marker.d.ts +35 -0
  188. package/server/bootstrap/shutdown-marker.d.ts.map +1 -0
  189. package/server/bootstrap/shutdown-marker.js +100 -0
  190. package/server/bootstrap/shutdown-marker.js.map +1 -0
  191. package/server/bootstrap/shutdown-runtime.d.ts +62 -0
  192. package/server/bootstrap/shutdown-runtime.d.ts.map +1 -0
  193. package/server/bootstrap/shutdown-runtime.js +66 -0
  194. package/server/bootstrap/shutdown-runtime.js.map +1 -0
  195. package/server/bootstrap/startup-banner.d.ts +34 -0
  196. package/server/bootstrap/startup-banner.d.ts.map +1 -0
  197. package/server/bootstrap/startup-banner.js +114 -0
  198. package/server/bootstrap/startup-banner.js.map +1 -0
  199. package/server/bootstrap/wire-runtime.d.ts +42 -0
  200. package/server/bootstrap/wire-runtime.d.ts.map +1 -0
  201. package/server/bootstrap/wire-runtime.js +205 -0
  202. package/server/bootstrap/wire-runtime.js.map +1 -0
  203. package/server/cli/help.d.ts +3 -0
  204. package/server/cli/help.d.ts.map +1 -0
  205. package/server/cli/help.js +39 -0
  206. package/server/cli/help.js.map +1 -0
  207. package/server/cli/hook-client.d.ts +12 -0
  208. package/server/cli/hook-client.d.ts.map +1 -0
  209. package/server/cli/hook-client.js +81 -0
  210. package/server/cli/hook-client.js.map +1 -0
  211. package/server/cli/hook.d.ts +3 -0
  212. package/server/cli/hook.d.ts.map +1 -0
  213. package/server/cli/hook.js +152 -0
  214. package/server/cli/hook.js.map +1 -0
  215. package/server/cli/main.d.ts +2 -0
  216. package/server/cli/main.d.ts.map +1 -0
  217. package/server/cli/main.js +133 -0
  218. package/server/cli/main.js.map +1 -0
  219. package/server/cli/notify.d.ts +19 -0
  220. package/server/cli/notify.d.ts.map +1 -0
  221. package/server/cli/notify.js +77 -0
  222. package/server/cli/notify.js.map +1 -0
  223. package/server/cli/open.d.ts +2 -0
  224. package/server/cli/open.d.ts.map +1 -0
  225. package/server/cli/open.js +47 -0
  226. package/server/cli/open.js.map +1 -0
  227. package/server/cli/probe-daemon-version.d.ts +46 -0
  228. package/server/cli/probe-daemon-version.d.ts.map +1 -0
  229. package/server/cli/probe-daemon-version.js +167 -0
  230. package/server/cli/probe-daemon-version.js.map +1 -0
  231. package/server/cli/pty-host.d.ts +36 -0
  232. package/server/cli/pty-host.d.ts.map +1 -0
  233. package/server/cli/pty-host.js +390 -0
  234. package/server/cli/pty-host.js.map +1 -0
  235. package/server/cli/qr.d.ts +2 -0
  236. package/server/cli/qr.d.ts.map +1 -0
  237. package/server/cli/qr.js +70 -0
  238. package/server/cli/qr.js.map +1 -0
  239. package/server/cli/restart-confirm.d.ts +33 -0
  240. package/server/cli/restart-confirm.d.ts.map +1 -0
  241. package/server/cli/restart-confirm.js +107 -0
  242. package/server/cli/restart-confirm.js.map +1 -0
  243. package/server/cli/restart.d.ts +17 -0
  244. package/server/cli/restart.d.ts.map +1 -0
  245. package/server/cli/restart.js +145 -0
  246. package/server/cli/restart.js.map +1 -0
  247. package/server/cli/service-darwin.d.ts +70 -0
  248. package/server/cli/service-darwin.d.ts.map +1 -0
  249. package/server/cli/service-darwin.js +562 -0
  250. package/server/cli/service-darwin.js.map +1 -0
  251. package/server/cli/service-linux.d.ts +81 -0
  252. package/server/cli/service-linux.d.ts.map +1 -0
  253. package/server/cli/service-linux.js +412 -0
  254. package/server/cli/service-linux.js.map +1 -0
  255. package/server/cli/service.d.ts +33 -0
  256. package/server/cli/service.d.ts.map +1 -0
  257. package/server/cli/service.js +133 -0
  258. package/server/cli/service.js.map +1 -0
  259. package/server/cli/shim-installer.d.ts +35 -0
  260. package/server/cli/shim-installer.d.ts.map +1 -0
  261. package/server/cli/shim-installer.js +662 -0
  262. package/server/cli/shim-installer.js.map +1 -0
  263. package/server/cli/shim-open.d.ts +2 -0
  264. package/server/cli/shim-open.d.ts.map +1 -0
  265. package/server/cli/shim-open.js +128 -0
  266. package/server/cli/shim-open.js.map +1 -0
  267. package/server/cli/shutdown-deps.d.ts +41 -0
  268. package/server/cli/shutdown-deps.d.ts.map +1 -0
  269. package/server/cli/shutdown-deps.js +158 -0
  270. package/server/cli/shutdown-deps.js.map +1 -0
  271. package/server/cli/stop.d.ts +11 -0
  272. package/server/cli/stop.d.ts.map +1 -0
  273. package/server/cli/stop.js +123 -0
  274. package/server/cli/stop.js.map +1 -0
  275. package/server/cli/unknown-command.d.ts +8 -0
  276. package/server/cli/unknown-command.d.ts.map +1 -0
  277. package/server/cli/unknown-command.js +14 -0
  278. package/server/cli/unknown-command.js.map +1 -0
  279. package/server/debug/agent-status-recorder.d.ts +57 -0
  280. package/server/debug/agent-status-recorder.d.ts.map +1 -0
  281. package/server/debug/agent-status-recorder.js +209 -0
  282. package/server/debug/agent-status-recorder.js.map +1 -0
  283. package/server/debug/terminal-trace-recorder.d.ts +41 -0
  284. package/server/debug/terminal-trace-recorder.d.ts.map +1 -0
  285. package/server/debug/terminal-trace-recorder.js +112 -0
  286. package/server/debug/terminal-trace-recorder.js.map +1 -0
  287. package/server/fonts/catalog.d.ts +35 -0
  288. package/server/fonts/catalog.d.ts.map +1 -0
  289. package/server/fonts/catalog.js +76 -0
  290. package/server/fonts/catalog.js.map +1 -0
  291. package/server/fonts/installer.d.ts +45 -0
  292. package/server/fonts/installer.d.ts.map +1 -0
  293. package/server/fonts/installer.js +201 -0
  294. package/server/fonts/installer.js.map +1 -0
  295. package/server/fonts/routes.d.ts +4 -0
  296. package/server/fonts/routes.d.ts.map +1 -0
  297. package/server/fonts/routes.js +91 -0
  298. package/server/fonts/routes.js.map +1 -0
  299. package/server/fs/drops.d.ts +50 -0
  300. package/server/fs/drops.d.ts.map +1 -0
  301. package/server/fs/drops.js +137 -0
  302. package/server/fs/drops.js.map +1 -0
  303. package/server/fs/file-uploads.d.ts +57 -0
  304. package/server/fs/file-uploads.d.ts.map +1 -0
  305. package/server/fs/file-uploads.js +214 -0
  306. package/server/fs/file-uploads.js.map +1 -0
  307. package/server/fs/file-watcher.d.ts +22 -0
  308. package/server/fs/file-watcher.d.ts.map +1 -0
  309. package/server/fs/file-watcher.js +105 -0
  310. package/server/fs/file-watcher.js.map +1 -0
  311. package/server/fs/git-watcher.d.ts +76 -0
  312. package/server/fs/git-watcher.d.ts.map +1 -0
  313. package/server/fs/git-watcher.js +356 -0
  314. package/server/fs/git-watcher.js.map +1 -0
  315. package/server/fs/media.d.ts +35 -0
  316. package/server/fs/media.d.ts.map +1 -0
  317. package/server/fs/media.js +271 -0
  318. package/server/fs/media.js.map +1 -0
  319. package/server/fs/service.d.ts +97 -0
  320. package/server/fs/service.d.ts.map +1 -0
  321. package/server/fs/service.js +306 -0
  322. package/server/fs/service.js.map +1 -0
  323. package/server/fs/upload-staging.d.ts +76 -0
  324. package/server/fs/upload-staging.d.ts.map +1 -0
  325. package/server/fs/upload-staging.js +283 -0
  326. package/server/fs/upload-staging.js.map +1 -0
  327. package/server/fs/watcher-lifecycle.d.ts +24 -0
  328. package/server/fs/watcher-lifecycle.d.ts.map +1 -0
  329. package/server/fs/watcher-lifecycle.js +105 -0
  330. package/server/fs/watcher-lifecycle.js.map +1 -0
  331. package/server/index.d.ts +17 -0
  332. package/server/index.d.ts.map +1 -0
  333. package/server/index.js +510 -0
  334. package/server/index.js.map +1 -0
  335. package/server/ipc/socket-server.d.ts +28 -0
  336. package/server/ipc/socket-server.d.ts.map +1 -0
  337. package/server/ipc/socket-server.js +206 -0
  338. package/server/ipc/socket-server.js.map +1 -0
  339. package/server/lib/git-exec.d.ts +38 -0
  340. package/server/lib/git-exec.d.ts.map +1 -0
  341. package/server/lib/git-exec.js +96 -0
  342. package/server/lib/git-exec.js.map +1 -0
  343. package/server/lib/open-in-ide.d.ts +22 -0
  344. package/server/lib/open-in-ide.d.ts.map +1 -0
  345. package/server/lib/open-in-ide.js +90 -0
  346. package/server/lib/open-in-ide.js.map +1 -0
  347. package/server/lib/open-in-os.d.ts +20 -0
  348. package/server/lib/open-in-os.d.ts.map +1 -0
  349. package/server/lib/open-in-os.js +51 -0
  350. package/server/lib/open-in-os.js.map +1 -0
  351. package/server/lib/path.d.ts +2 -0
  352. package/server/lib/path.d.ts.map +1 -0
  353. package/server/lib/path.js +10 -0
  354. package/server/lib/path.js.map +1 -0
  355. package/server/lib/promise-mutex.d.ts +7 -0
  356. package/server/lib/promise-mutex.d.ts.map +1 -0
  357. package/server/lib/promise-mutex.js +26 -0
  358. package/server/lib/promise-mutex.js.map +1 -0
  359. package/server/lib/sd-notify.d.ts +8 -0
  360. package/server/lib/sd-notify.d.ts.map +1 -0
  361. package/server/lib/sd-notify.js +27 -0
  362. package/server/lib/sd-notify.js.map +1 -0
  363. package/server/net/local-machine.d.ts +7 -0
  364. package/server/net/local-machine.d.ts.map +1 -0
  365. package/server/net/local-machine.js +79 -0
  366. package/server/net/local-machine.js.map +1 -0
  367. package/server/net/reachable-host.d.ts +12 -0
  368. package/server/net/reachable-host.d.ts.map +1 -0
  369. package/server/net/reachable-host.js +25 -0
  370. package/server/net/reachable-host.js.map +1 -0
  371. package/server/network/endpoints.d.ts +14 -0
  372. package/server/network/endpoints.d.ts.map +1 -0
  373. package/server/network/endpoints.js +104 -0
  374. package/server/network/endpoints.js.map +1 -0
  375. package/server/network/qr.d.ts +16 -0
  376. package/server/network/qr.d.ts.map +1 -0
  377. package/server/network/qr.js +89 -0
  378. package/server/network/qr.js.map +1 -0
  379. package/server/port-forwarder/forwarder.d.ts +47 -0
  380. package/server/port-forwarder/forwarder.d.ts.map +1 -0
  381. package/server/port-forwarder/forwarder.js +159 -0
  382. package/server/port-forwarder/forwarder.js.map +1 -0
  383. package/server/port-scanner/scanner.d.ts +24 -0
  384. package/server/port-scanner/scanner.d.ts.map +1 -0
  385. package/server/port-scanner/scanner.js +193 -0
  386. package/server/port-scanner/scanner.js.map +1 -0
  387. package/server/pty/connection-lifecycle.d.ts +50 -0
  388. package/server/pty/connection-lifecycle.d.ts.map +1 -0
  389. package/server/pty/connection-lifecycle.js +113 -0
  390. package/server/pty/connection-lifecycle.js.map +1 -0
  391. package/server/pty/daemon-connect.d.ts +52 -0
  392. package/server/pty/daemon-connect.d.ts.map +1 -0
  393. package/server/pty/daemon-connect.js +62 -0
  394. package/server/pty/daemon-connect.js.map +1 -0
  395. package/server/pty/handshake-timeout-race.d.ts +22 -0
  396. package/server/pty/handshake-timeout-race.d.ts.map +1 -0
  397. package/server/pty/handshake-timeout-race.js +23 -0
  398. package/server/pty/handshake-timeout-race.js.map +1 -0
  399. package/server/pty/headless-replay-snapshot.d.ts +28 -0
  400. package/server/pty/headless-replay-snapshot.d.ts.map +1 -0
  401. package/server/pty/headless-replay-snapshot.js +285 -0
  402. package/server/pty/headless-replay-snapshot.js.map +1 -0
  403. package/server/pty/headless-terminal-state-cache.d.ts +31 -0
  404. package/server/pty/headless-terminal-state-cache.d.ts.map +1 -0
  405. package/server/pty/headless-terminal-state-cache.js +119 -0
  406. package/server/pty/headless-terminal-state-cache.js.map +1 -0
  407. package/server/pty/hello-ack-validator.d.ts +15 -0
  408. package/server/pty/hello-ack-validator.d.ts.map +1 -0
  409. package/server/pty/hello-ack-validator.js +30 -0
  410. package/server/pty/hello-ack-validator.js.map +1 -0
  411. package/server/pty/host-daemon/bootstrap.d.ts +100 -0
  412. package/server/pty/host-daemon/bootstrap.d.ts.map +1 -0
  413. package/server/pty/host-daemon/bootstrap.js +611 -0
  414. package/server/pty/host-daemon/bootstrap.js.map +1 -0
  415. package/server/pty/host-daemon/daemon.d.ts +111 -0
  416. package/server/pty/host-daemon/daemon.d.ts.map +1 -0
  417. package/server/pty/host-daemon/daemon.js +648 -0
  418. package/server/pty/host-daemon/daemon.js.map +1 -0
  419. package/server/pty/host-daemon/entry.d.ts +3 -0
  420. package/server/pty/host-daemon/entry.d.ts.map +1 -0
  421. package/server/pty/host-daemon/entry.js +72 -0
  422. package/server/pty/host-daemon/entry.js.map +1 -0
  423. package/server/pty/host-daemon/lockfile.d.ts +12 -0
  424. package/server/pty/host-daemon/lockfile.d.ts.map +1 -0
  425. package/server/pty/host-daemon/lockfile.js +120 -0
  426. package/server/pty/host-daemon/lockfile.js.map +1 -0
  427. package/server/pty/host-daemon/mode-marker.d.ts +77 -0
  428. package/server/pty/host-daemon/mode-marker.d.ts.map +1 -0
  429. package/server/pty/host-daemon/mode-marker.js +228 -0
  430. package/server/pty/host-daemon/mode-marker.js.map +1 -0
  431. package/server/pty/host-daemon/orphan-cleanup.d.ts +42 -0
  432. package/server/pty/host-daemon/orphan-cleanup.d.ts.map +1 -0
  433. package/server/pty/host-daemon/orphan-cleanup.js +84 -0
  434. package/server/pty/host-daemon/orphan-cleanup.js.map +1 -0
  435. package/server/pty/host-daemon/paths.d.ts +10 -0
  436. package/server/pty/host-daemon/paths.d.ts.map +1 -0
  437. package/server/pty/host-daemon/paths.js +56 -0
  438. package/server/pty/host-daemon/paths.js.map +1 -0
  439. package/server/pty/host-daemon/server-connection.d.ts +44 -0
  440. package/server/pty/host-daemon/server-connection.d.ts.map +1 -0
  441. package/server/pty/host-daemon/server-connection.js +100 -0
  442. package/server/pty/host-daemon/server-connection.js.map +1 -0
  443. package/server/pty/host-daemon/service-detection.d.ts +24 -0
  444. package/server/pty/host-daemon/service-detection.d.ts.map +1 -0
  445. package/server/pty/host-daemon/service-detection.js +16 -0
  446. package/server/pty/host-daemon/service-detection.js.map +1 -0
  447. package/server/pty/host-daemon/socket-ready.d.ts +22 -0
  448. package/server/pty/host-daemon/socket-ready.d.ts.map +1 -0
  449. package/server/pty/host-daemon/socket-ready.js +33 -0
  450. package/server/pty/host-daemon/socket-ready.js.map +1 -0
  451. package/server/pty/host-daemon/spawn-daemon.d.ts +45 -0
  452. package/server/pty/host-daemon/spawn-daemon.d.ts.map +1 -0
  453. package/server/pty/host-daemon/spawn-daemon.js +155 -0
  454. package/server/pty/host-daemon/spawn-daemon.js.map +1 -0
  455. package/server/pty/host-daemon/terminate-daemon.d.ts +16 -0
  456. package/server/pty/host-daemon/terminate-daemon.d.ts.map +1 -0
  457. package/server/pty/host-daemon/terminate-daemon.js +128 -0
  458. package/server/pty/host-daemon/terminate-daemon.js.map +1 -0
  459. package/server/pty/host-protocol/frames.d.ts +110 -0
  460. package/server/pty/host-protocol/frames.d.ts.map +1 -0
  461. package/server/pty/host-protocol/frames.js +255 -0
  462. package/server/pty/host-protocol/frames.js.map +1 -0
  463. package/server/pty/host-protocol/messages.d.ts +140 -0
  464. package/server/pty/host-protocol/messages.d.ts.map +1 -0
  465. package/server/pty/host-protocol/messages.js +117 -0
  466. package/server/pty/host-protocol/messages.js.map +1 -0
  467. package/server/pty/host.d.ts +273 -0
  468. package/server/pty/host.d.ts.map +1 -0
  469. package/server/pty/host.js +184 -0
  470. package/server/pty/host.js.map +1 -0
  471. package/server/pty/in-process-host.d.ts +224 -0
  472. package/server/pty/in-process-host.d.ts.map +1 -0
  473. package/server/pty/in-process-host.js +1183 -0
  474. package/server/pty/in-process-host.js.map +1 -0
  475. package/server/pty/osc7-lifecycle.d.ts +8 -0
  476. package/server/pty/osc7-lifecycle.d.ts.map +1 -0
  477. package/server/pty/osc7-lifecycle.js +22 -0
  478. package/server/pty/osc7-lifecycle.js.map +1 -0
  479. package/server/pty/osc7-parser.d.ts +23 -0
  480. package/server/pty/osc7-parser.d.ts.map +1 -0
  481. package/server/pty/osc7-parser.js +91 -0
  482. package/server/pty/osc7-parser.js.map +1 -0
  483. package/server/pty/remote-host.d.ts +188 -0
  484. package/server/pty/remote-host.d.ts.map +1 -0
  485. package/server/pty/remote-host.js +810 -0
  486. package/server/pty/remote-host.js.map +1 -0
  487. package/server/pty/request-correlator.d.ts +59 -0
  488. package/server/pty/request-correlator.d.ts.map +1 -0
  489. package/server/pty/request-correlator.js +75 -0
  490. package/server/pty/request-correlator.js.map +1 -0
  491. package/server/pty/scrollback-log.d.ts +130 -0
  492. package/server/pty/scrollback-log.d.ts.map +1 -0
  493. package/server/pty/scrollback-log.js +344 -0
  494. package/server/pty/scrollback-log.js.map +1 -0
  495. package/server/pty/scrollback-sanitize.d.ts +2 -0
  496. package/server/pty/scrollback-sanitize.d.ts.map +1 -0
  497. package/server/pty/scrollback-sanitize.js +54 -0
  498. package/server/pty/scrollback-sanitize.js.map +1 -0
  499. package/server/pty/session-mirror.d.ts +67 -0
  500. package/server/pty/session-mirror.d.ts.map +1 -0
  501. package/server/pty/session-mirror.js +112 -0
  502. package/server/pty/session-mirror.js.map +1 -0
  503. package/server/pty/session-policy.d.ts +85 -0
  504. package/server/pty/session-policy.d.ts.map +1 -0
  505. package/server/pty/session-policy.js +186 -0
  506. package/server/pty/session-policy.js.map +1 -0
  507. package/server/pty/version-mismatch-recovery.d.ts +71 -0
  508. package/server/pty/version-mismatch-recovery.d.ts.map +1 -0
  509. package/server/pty/version-mismatch-recovery.js +63 -0
  510. package/server/pty/version-mismatch-recovery.js.map +1 -0
  511. package/server/routes/debug-agent-status.d.ts +5 -0
  512. package/server/routes/debug-agent-status.d.ts.map +1 -0
  513. package/server/routes/debug-agent-status.js +22 -0
  514. package/server/routes/debug-agent-status.js.map +1 -0
  515. package/server/routes/debug-diagnostics.d.ts +8 -0
  516. package/server/routes/debug-diagnostics.d.ts.map +1 -0
  517. package/server/routes/debug-diagnostics.js +34 -0
  518. package/server/routes/debug-diagnostics.js.map +1 -0
  519. package/server/routes/debug-terminal-trace.d.ts +16 -0
  520. package/server/routes/debug-terminal-trace.d.ts.map +1 -0
  521. package/server/routes/debug-terminal-trace.js +545 -0
  522. package/server/routes/debug-terminal-trace.js.map +1 -0
  523. package/server/routes/drops.d.ts +13 -0
  524. package/server/routes/drops.d.ts.map +1 -0
  525. package/server/routes/drops.js +126 -0
  526. package/server/routes/drops.js.map +1 -0
  527. package/server/routes/file-uploads.d.ts +9 -0
  528. package/server/routes/file-uploads.d.ts.map +1 -0
  529. package/server/routes/file-uploads.js +119 -0
  530. package/server/routes/file-uploads.js.map +1 -0
  531. package/server/routes/files.d.ts +9 -0
  532. package/server/routes/files.d.ts.map +1 -0
  533. package/server/routes/files.js +441 -0
  534. package/server/routes/files.js.map +1 -0
  535. package/server/routes/filesystem.d.ts +6 -0
  536. package/server/routes/filesystem.d.ts.map +1 -0
  537. package/server/routes/filesystem.js +76 -0
  538. package/server/routes/filesystem.js.map +1 -0
  539. package/server/routes/git.d.ts +38 -0
  540. package/server/routes/git.d.ts.map +1 -0
  541. package/server/routes/git.js +585 -0
  542. package/server/routes/git.js.map +1 -0
  543. package/server/routes/healthz.d.ts +8 -0
  544. package/server/routes/healthz.d.ts.map +1 -0
  545. package/server/routes/healthz.js +24 -0
  546. package/server/routes/healthz.js.map +1 -0
  547. package/server/routes/hook.d.ts +14 -0
  548. package/server/routes/hook.d.ts.map +1 -0
  549. package/server/routes/hook.js +86 -0
  550. package/server/routes/hook.js.map +1 -0
  551. package/server/routes/ide-commands.d.ts +9 -0
  552. package/server/routes/ide-commands.d.ts.map +1 -0
  553. package/server/routes/ide-commands.js +23 -0
  554. package/server/routes/ide-commands.js.map +1 -0
  555. package/server/routes/lib/resolve-worktree.d.ts +30 -0
  556. package/server/routes/lib/resolve-worktree.d.ts.map +1 -0
  557. package/server/routes/lib/resolve-worktree.js +35 -0
  558. package/server/routes/lib/resolve-worktree.js.map +1 -0
  559. package/server/routes/open.d.ts +4 -0
  560. package/server/routes/open.d.ts.map +1 -0
  561. package/server/routes/open.js +21 -0
  562. package/server/routes/open.js.map +1 -0
  563. package/server/routes/pane-commands.d.ts +9 -0
  564. package/server/routes/pane-commands.d.ts.map +1 -0
  565. package/server/routes/pane-commands.js +23 -0
  566. package/server/routes/pane-commands.js.map +1 -0
  567. package/server/routes/projects.d.ts +15 -0
  568. package/server/routes/projects.d.ts.map +1 -0
  569. package/server/routes/projects.js +363 -0
  570. package/server/routes/projects.js.map +1 -0
  571. package/server/routes/server-notices.d.ts +4 -0
  572. package/server/routes/server-notices.d.ts.map +1 -0
  573. package/server/routes/server-notices.js +29 -0
  574. package/server/routes/server-notices.js.map +1 -0
  575. package/server/routes/service-config.d.ts +11 -0
  576. package/server/routes/service-config.d.ts.map +1 -0
  577. package/server/routes/service-config.js +64 -0
  578. package/server/routes/service-config.js.map +1 -0
  579. package/server/routes/sessions.d.ts +7 -0
  580. package/server/routes/sessions.d.ts.map +1 -0
  581. package/server/routes/sessions.js +218 -0
  582. package/server/routes/sessions.js.map +1 -0
  583. package/server/service/caffeinate.d.ts +33 -0
  584. package/server/service/caffeinate.d.ts.map +1 -0
  585. package/server/service/caffeinate.js +72 -0
  586. package/server/service/caffeinate.js.map +1 -0
  587. package/server/state/app-state.d.ts +167 -0
  588. package/server/state/app-state.d.ts.map +1 -0
  589. package/server/state/app-state.js +335 -0
  590. package/server/state/app-state.js.map +1 -0
  591. package/server/state/project-manager.d.ts +30 -0
  592. package/server/state/project-manager.d.ts.map +1 -0
  593. package/server/state/project-manager.js +128 -0
  594. package/server/state/project-manager.js.map +1 -0
  595. package/server/state/server-notices.d.ts +12 -0
  596. package/server/state/server-notices.d.ts.map +1 -0
  597. package/server/state/server-notices.js +32 -0
  598. package/server/state/server-notices.js.map +1 -0
  599. package/server/state/worktree-cache.d.ts +25 -0
  600. package/server/state/worktree-cache.d.ts.map +1 -0
  601. package/server/state/worktree-cache.js +53 -0
  602. package/server/state/worktree-cache.js.map +1 -0
  603. package/server/ws/events.d.ts +45 -0
  604. package/server/ws/events.d.ts.map +1 -0
  605. package/server/ws/events.js +134 -0
  606. package/server/ws/events.js.map +1 -0
  607. package/server/ws/keepalive.d.ts +27 -0
  608. package/server/ws/keepalive.d.ts.map +1 -0
  609. package/server/ws/keepalive.js +63 -0
  610. package/server/ws/keepalive.js.map +1 -0
  611. package/server/ws/terminal-attach.d.ts +13 -0
  612. package/server/ws/terminal-attach.d.ts.map +1 -0
  613. package/server/ws/terminal-attach.js +233 -0
  614. package/server/ws/terminal-attach.js.map +1 -0
  615. package/server/ws/terminal-flow.d.ts +17 -0
  616. package/server/ws/terminal-flow.d.ts.map +1 -0
  617. package/server/ws/terminal-flow.js +64 -0
  618. package/server/ws/terminal-flow.js.map +1 -0
  619. package/server/ws/terminal.d.ts +69 -0
  620. package/server/ws/terminal.d.ts.map +1 -0
  621. package/server/ws/terminal.js +311 -0
  622. package/server/ws/terminal.js.map +1 -0
  623. package/web/assets/EditorPane-CzzT3iYY.js +123 -0
  624. package/web/assets/SymbolsNerdFontMono-Regular-CwEZqMeU.woff2 +0 -0
  625. package/web/assets/TerminalPane-CjbYzePr.js +68 -0
  626. package/web/assets/TerminalPane-DkTCHfhq.css +1 -0
  627. package/web/assets/file-icons-JBi09j0r.js +6 -0
  628. package/web/assets/index-CTTkRpnn.css +2 -0
  629. package/web/assets/index-CmhewzMp.js +34 -0
  630. package/web/assets/session-resume-7f-tB-ZU.js +2 -0
  631. package/web/assets/terminal-trace-PuuFRybC.js +2803 -0
  632. package/web/assets/useVirtualKeyboard-DgJb9u9d.js +1 -0
  633. package/web/index.html +52 -0
@@ -0,0 +1,191 @@
1
+ /**
2
+ * Terminal WS protocol .
3
+ *
4
+ * Two layers coexist:
5
+ * - **JSON envelopes** (this file's types): `init`, `init-ack`, `replay`,
6
+ * carrying control + capability negotiation. Always plain text.
7
+ * - **Binary frames** (see `BinaryPrefix`): hot-path INPUT/OUTPUT/RESIZE/
8
+ * REFRESH/EXIT. Sent only when both client and server declare
9
+ * `capabilities.binary`; otherwise the legacy JSON `input`/`resize`/
10
+ * `refresh` envelopes apply (back-compat for old web clients).
11
+ */
12
+ /**
13
+ * Capabilities declared by either side. Both fields default to `false`
14
+ * if absent -- `chunkedReplay` requires `binary` (validated server-side).
15
+ */
16
+ export interface TerminalCapabilities {
17
+ binary: boolean;
18
+ chunkedReplay: boolean;
19
+ }
20
+ /**
21
+ * Reconnect cursor stored in the client's `sessionStorage`.
22
+ *
23
+ * `seq` is a uint64 chunk sequence number serialized as a decimal string
24
+ * across the JSON wire and storage layers -- a JSON `number` would lose
25
+ * precision past 2^53, and BigInt has no JSON literal form. The server
26
+ * parses it back into `bigint` before comparing against the in-memory
27
+ * ring. Empty rings are represented by the absence of `lastSeen` (not a
28
+ * sentinel string), so any string here means "client genuinely saw this
29
+ * chunk".
30
+ */
31
+ export interface TerminalLastSeen {
32
+ generation: number;
33
+ seq: string;
34
+ }
35
+ /**
36
+ * Snapshot of server-side chunk ring at init-ack time.
37
+ *
38
+ * - `lastDeliveredSeq`: the sequence number of the most recently
39
+ * appended chunk (= `nextSeqToAllocate - 1`). `null` when the ring is
40
+ * empty (fresh session, no broadcast yet).
41
+ * - `oldestSeq`: the seq of the oldest chunk still in the ring. `null`
42
+ * when the ring is empty.
43
+ *
44
+ * Both are decimal strings (uint64 BigInt JSON encoding, see
45
+ * `TerminalLastSeen.seq`). The client uses these to seed `lastSeen`
46
+ * after a `replay: "full"` snapshot so the next reconnect's delta
47
+ * window starts from `lastDeliveredSeq + 1`.
48
+ */
49
+ export interface TerminalServerState {
50
+ generation: number;
51
+ lastDeliveredSeq: string | null;
52
+ oldestSeq: string | null;
53
+ }
54
+ export type TerminalReplayKind = "delta" | "full" | "none";
55
+ /**
56
+ * Client -> server. First message on every WS must be `init`: it carries
57
+ * the viewport dims that the PTY should be spawned with (for a session
58
+ * still in `spawning` state) or resized to (for a session already
59
+ * `running`). Any other first frame closes the WS.
60
+ *
61
+ * `capabilities` was added in . Old clients omit it,
62
+ * which selects the legacy JSON path. `lastSeen` requires
63
+ * `chunkedReplay=true`; otherwise it is ignored.
64
+ */
65
+ export type WsTerminalClientMessage = {
66
+ type: "init";
67
+ cols: number;
68
+ rows: number;
69
+ capabilities?: TerminalCapabilities & {
70
+ lastSeen?: TerminalLastSeen;
71
+ };
72
+ } | {
73
+ type: "input";
74
+ data: string;
75
+ generation?: number;
76
+ } | {
77
+ type: "resize";
78
+ cols: number;
79
+ rows: number;
80
+ } | {
81
+ type: "refresh";
82
+ } | {
83
+ type: "flow-pause";
84
+ } | {
85
+ type: "flow-resume";
86
+ };
87
+ /**
88
+ * Server -> client JSON envelopes.
89
+ *
90
+ * - `replay`: bulk scrollback rehydration after server restart, PTY
91
+ * restart, or in-memory chunk eviction. Always sent before live
92
+ * OUTPUT resumes.
93
+ * - `init-ack`: capability handshake response. Old servers that don't
94
+ * know about capabilities skip this and emit `replay` directly with
95
+ * string OUTPUTs -- old clients' code path stays untouched.
96
+ */
97
+ export type WsTerminalServerMessage = {
98
+ type: "replay";
99
+ data: string;
100
+ } | {
101
+ type: "init-ack";
102
+ capabilities: TerminalCapabilities;
103
+ serverState: TerminalServerState;
104
+ replay: TerminalReplayKind;
105
+ };
106
+ /** @deprecated use WsTerminalClientMessage */
107
+ export type WsTerminalMessage = WsTerminalClientMessage;
108
+ /**
109
+ * 1-byte prefix for the binary wire format. Big-endian for any
110
+ * multi-byte numeric fields (`uint32 generation`, `uint64 seq`,
111
+ * `uint32 cols/rows`, `int32 exitCode`).
112
+ *
113
+ * Numbering keeps client->server prefixes in 0x0X and server->client in
114
+ * 0x1X to make Wireshark / log inspection obvious.
115
+ */
116
+ export declare const BinaryPrefix: {
117
+ readonly INPUT: 0;
118
+ readonly RESIZE: 1;
119
+ readonly REFRESH: 2;
120
+ readonly FLOW_PAUSE: 3;
121
+ readonly FLOW_RESUME: 4;
122
+ readonly OUTPUT: 16;
123
+ readonly EXIT: 17;
124
+ };
125
+ export type BinaryPrefixValue = (typeof BinaryPrefix)[keyof typeof BinaryPrefix];
126
+ export declare const OUTPUT_HEADER_BYTES = 12;
127
+ export declare const INPUT_HEADER_BYTES = 4;
128
+ export declare const RESIZE_PAYLOAD_BYTES = 8;
129
+ export declare const EXIT_PAYLOAD_BYTES = 4;
130
+ /** Hard limits used by R6 frame validation. */
131
+ export declare const RESIZE_MAX_DIM = 8192;
132
+ export type BinaryFrame = {
133
+ kind: "input";
134
+ generation: number;
135
+ data: Uint8Array;
136
+ } | {
137
+ kind: "resize";
138
+ cols: number;
139
+ rows: number;
140
+ } | {
141
+ kind: "refresh";
142
+ } | {
143
+ kind: "flow-pause";
144
+ } | {
145
+ kind: "flow-resume";
146
+ } | {
147
+ kind: "output";
148
+ generation: number;
149
+ seq: bigint;
150
+ data: Uint8Array;
151
+ } | {
152
+ kind: "exit";
153
+ exitCode: number;
154
+ };
155
+ export type BinaryDecodeResult = {
156
+ ok: true;
157
+ frame: BinaryFrame;
158
+ } | {
159
+ ok: false;
160
+ reason: string;
161
+ };
162
+ /**
163
+ * Encode an OUTPUT frame: `0x10 | uint32 generation | uint64 seq | data`.
164
+ * Caller-supplied `data` is treated as a raw PTY byte slice; we never
165
+ * re-encode UTF-8. `seq` is a `bigint` because uint64 exceeds JS safe
166
+ * integer range (2^53).
167
+ */
168
+ export declare function encodeOutputFrame(generation: number, seq: bigint, data: Uint8Array): Uint8Array<ArrayBuffer>;
169
+ export declare function encodeExitFrame(exitCode: number): Uint8Array<ArrayBuffer>;
170
+ /**
171
+ * Encode an INPUT frame: `0x00 | uint32 generation | data`.
172
+ *
173
+ * `generation` (PTY generation gate) tags the input with the PTY generation the
174
+ * client believes is active, so the server can drop stale frames after
175
+ * an auto-resume rather than forwarding them to the new shell's stdin.
176
+ */
177
+ export declare function encodeInputFrame(generation: number, data: Uint8Array): Uint8Array<ArrayBuffer>;
178
+ export declare function encodeResizeFrame(cols: number, rows: number): Uint8Array<ArrayBuffer>;
179
+ export declare function encodeRefreshFrame(): Uint8Array<ArrayBuffer>;
180
+ export declare function encodeFlowPauseFrame(): Uint8Array<ArrayBuffer>;
181
+ export declare function encodeFlowResumeFrame(): Uint8Array<ArrayBuffer>;
182
+ /**
183
+ * Decode any binary frame received off the wire. Never throws -- R6
184
+ * (DoS protection) requires all length / range / unknown-prefix errors
185
+ * to be returned as `{ ok: false, reason }` so the caller can decide
186
+ * whether to drop, warn, or close the WS after a cumulative threshold.
187
+ */
188
+ export declare function decodeBinaryFrame(buf: Uint8Array): BinaryDecodeResult;
189
+ /** Cumulative malformed-frame threshold before closing the WS (R6). */
190
+ export declare const MALFORMED_FRAME_CLOSE_THRESHOLD = 32;
191
+ //# sourceMappingURL=terminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * Terminal WS protocol .
3
+ *
4
+ * Two layers coexist:
5
+ * - **JSON envelopes** (this file's types): `init`, `init-ack`, `replay`,
6
+ * carrying control + capability negotiation. Always plain text.
7
+ * - **Binary frames** (see `BinaryPrefix`): hot-path INPUT/OUTPUT/RESIZE/
8
+ * REFRESH/EXIT. Sent only when both client and server declare
9
+ * `capabilities.binary`; otherwise the legacy JSON `input`/`resize`/
10
+ * `refresh` envelopes apply (back-compat for old web clients).
11
+ */
12
+ /**
13
+ * 1-byte prefix for the binary wire format. Big-endian for any
14
+ * multi-byte numeric fields (`uint32 generation`, `uint64 seq`,
15
+ * `uint32 cols/rows`, `int32 exitCode`).
16
+ *
17
+ * Numbering keeps client->server prefixes in 0x0X and server->client in
18
+ * 0x1X to make Wireshark / log inspection obvious.
19
+ */
20
+ export const BinaryPrefix = {
21
+ // client -> server
22
+ INPUT: 0x00,
23
+ RESIZE: 0x01,
24
+ REFRESH: 0x02,
25
+ FLOW_PAUSE: 0x03,
26
+ FLOW_RESUME: 0x04,
27
+ // server -> client
28
+ OUTPUT: 0x10,
29
+ EXIT: 0x11,
30
+ };
31
+ export const OUTPUT_HEADER_BYTES = 12; // uint32 generation + uint64 seq
32
+ export const INPUT_HEADER_BYTES = 4; // uint32 generation (PTY generation gate)
33
+ export const RESIZE_PAYLOAD_BYTES = 8; // uint32 cols + uint32 rows
34
+ export const EXIT_PAYLOAD_BYTES = 4; // int32 exitCode
35
+ /** Hard limits used by R6 frame validation. */
36
+ export const RESIZE_MAX_DIM = 8192;
37
+ /**
38
+ * Encode an OUTPUT frame: `0x10 | uint32 generation | uint64 seq | data`.
39
+ * Caller-supplied `data` is treated as a raw PTY byte slice; we never
40
+ * re-encode UTF-8. `seq` is a `bigint` because uint64 exceeds JS safe
41
+ * integer range (2^53).
42
+ */
43
+ export function encodeOutputFrame(generation, seq, data) {
44
+ const out = new Uint8Array(1 + OUTPUT_HEADER_BYTES + data.length);
45
+ const view = new DataView(out.buffer, out.byteOffset, out.byteLength);
46
+ out[0] = BinaryPrefix.OUTPUT;
47
+ view.setUint32(1, generation >>> 0, false);
48
+ view.setBigUint64(5, BigInt.asUintN(64, seq), false);
49
+ out.set(data, 1 + OUTPUT_HEADER_BYTES);
50
+ return out;
51
+ }
52
+ export function encodeExitFrame(exitCode) {
53
+ const out = new Uint8Array(1 + EXIT_PAYLOAD_BYTES);
54
+ const view = new DataView(out.buffer, out.byteOffset, out.byteLength);
55
+ out[0] = BinaryPrefix.EXIT;
56
+ view.setInt32(1, exitCode | 0, false);
57
+ return out;
58
+ }
59
+ /**
60
+ * Encode an INPUT frame: `0x00 | uint32 generation | data`.
61
+ *
62
+ * `generation` (PTY generation gate) tags the input with the PTY generation the
63
+ * client believes is active, so the server can drop stale frames after
64
+ * an auto-resume rather than forwarding them to the new shell's stdin.
65
+ */
66
+ export function encodeInputFrame(generation, data) {
67
+ const out = new Uint8Array(1 + INPUT_HEADER_BYTES + data.length);
68
+ const view = new DataView(out.buffer, out.byteOffset, out.byteLength);
69
+ out[0] = BinaryPrefix.INPUT;
70
+ view.setUint32(1, generation >>> 0, false);
71
+ out.set(data, 1 + INPUT_HEADER_BYTES);
72
+ return out;
73
+ }
74
+ export function encodeResizeFrame(cols, rows) {
75
+ const out = new Uint8Array(1 + RESIZE_PAYLOAD_BYTES);
76
+ const view = new DataView(out.buffer, out.byteOffset, out.byteLength);
77
+ out[0] = BinaryPrefix.RESIZE;
78
+ view.setUint32(1, cols >>> 0, false);
79
+ view.setUint32(5, rows >>> 0, false);
80
+ return out;
81
+ }
82
+ export function encodeRefreshFrame() {
83
+ return new Uint8Array([BinaryPrefix.REFRESH]);
84
+ }
85
+ export function encodeFlowPauseFrame() {
86
+ return new Uint8Array([BinaryPrefix.FLOW_PAUSE]);
87
+ }
88
+ export function encodeFlowResumeFrame() {
89
+ return new Uint8Array([BinaryPrefix.FLOW_RESUME]);
90
+ }
91
+ /**
92
+ * Decode any binary frame received off the wire. Never throws -- R6
93
+ * (DoS protection) requires all length / range / unknown-prefix errors
94
+ * to be returned as `{ ok: false, reason }` so the caller can decide
95
+ * whether to drop, warn, or close the WS after a cumulative threshold.
96
+ */
97
+ export function decodeBinaryFrame(buf) {
98
+ if (buf.length < 1)
99
+ return { ok: false, reason: "empty buffer" };
100
+ const prefix = buf[0];
101
+ const view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);
102
+ switch (prefix) {
103
+ case BinaryPrefix.INPUT: {
104
+ if (buf.length < 1 + INPUT_HEADER_BYTES) {
105
+ return { ok: false, reason: "input header" };
106
+ }
107
+ const generation = view.getUint32(1, false);
108
+ return {
109
+ ok: true,
110
+ frame: {
111
+ kind: "input",
112
+ generation,
113
+ data: buf.subarray(1 + INPUT_HEADER_BYTES),
114
+ },
115
+ };
116
+ }
117
+ case BinaryPrefix.RESIZE: {
118
+ if (buf.length !== 1 + RESIZE_PAYLOAD_BYTES) {
119
+ return { ok: false, reason: "resize length" };
120
+ }
121
+ const cols = view.getUint32(1, false);
122
+ const rows = view.getUint32(5, false);
123
+ if (cols === 0 ||
124
+ rows === 0 ||
125
+ cols > RESIZE_MAX_DIM ||
126
+ rows > RESIZE_MAX_DIM) {
127
+ return { ok: false, reason: "resize range" };
128
+ }
129
+ return { ok: true, frame: { kind: "resize", cols, rows } };
130
+ }
131
+ case BinaryPrefix.REFRESH:
132
+ if (buf.length !== 1)
133
+ return { ok: false, reason: "refresh length" };
134
+ return { ok: true, frame: { kind: "refresh" } };
135
+ case BinaryPrefix.FLOW_PAUSE:
136
+ if (buf.length !== 1)
137
+ return { ok: false, reason: "flow-pause length" };
138
+ return { ok: true, frame: { kind: "flow-pause" } };
139
+ case BinaryPrefix.FLOW_RESUME:
140
+ if (buf.length !== 1)
141
+ return { ok: false, reason: "flow-resume length" };
142
+ return { ok: true, frame: { kind: "flow-resume" } };
143
+ case BinaryPrefix.OUTPUT: {
144
+ if (buf.length < 1 + OUTPUT_HEADER_BYTES) {
145
+ return { ok: false, reason: "output header" };
146
+ }
147
+ const generation = view.getUint32(1, false);
148
+ const seq = view.getBigUint64(5, false);
149
+ return {
150
+ ok: true,
151
+ frame: {
152
+ kind: "output",
153
+ generation,
154
+ seq,
155
+ data: buf.subarray(1 + OUTPUT_HEADER_BYTES),
156
+ },
157
+ };
158
+ }
159
+ case BinaryPrefix.EXIT: {
160
+ if (buf.length !== 1 + EXIT_PAYLOAD_BYTES) {
161
+ return { ok: false, reason: "exit length" };
162
+ }
163
+ return {
164
+ ok: true,
165
+ frame: { kind: "exit", exitCode: view.getInt32(1, false) },
166
+ };
167
+ }
168
+ default:
169
+ return { ok: false, reason: `unknown prefix 0x${prefix.toString(16)}` };
170
+ }
171
+ }
172
+ /** Cumulative malformed-frame threshold before closing the WS (R6). */
173
+ export const MALFORMED_FRAME_CLOSE_THRESHOLD = 32;
174
+ //# sourceMappingURL=terminal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA4GH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,mBAAmB;IACnB,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,IAAI;IACjB,mBAAmB;IACnB,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;CACF,CAAC;AAKX,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC,CAAC,iCAAiC;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC,0CAA0C;AAC/E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,CAAC,4BAA4B;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC,iBAAiB;AAEtD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AAoBnC;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAAkB,EAClB,GAAW,EACX,IAAgB;IAEhB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACtE,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC;IAC7B,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACrD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACtE,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,UAAkB,EAClB,IAAgB;IAEhB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACtE,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC;IAC5B,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3C,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC;IACtC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,IAAY,EACZ,IAAY;IAEZ,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACtE,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC;IAC7B,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,UAAU,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,UAAU,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,UAAU,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAe;IAC/C,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IACjE,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACtE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,kBAAkB,EAAE,CAAC;gBACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;YAC/C,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5C,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,UAAU;oBACV,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,kBAAkB,CAAC;iBAC3C;aACF,CAAC;QACJ,CAAC;QACD,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;YACzB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,oBAAoB,EAAE,CAAC;gBAC5C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;YAChD,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACtC,IACE,IAAI,KAAK,CAAC;gBACV,IAAI,KAAK,CAAC;gBACV,IAAI,GAAG,cAAc;gBACrB,IAAI,GAAG,cAAc,EACrB,CAAC;gBACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;QAC7D,CAAC;QACD,KAAK,YAAY,CAAC,OAAO;YACvB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;YACrE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;QAClD,KAAK,YAAY,CAAC,UAAU;YAC1B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;YACxE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC;QACrD,KAAK,YAAY,CAAC,WAAW;YAC3B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;YACzE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC;QACtD,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;YACzB,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,mBAAmB,EAAE,CAAC;gBACzC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;YAChD,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU;oBACV,GAAG;oBACH,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,mBAAmB,CAAC;iBAC5C;aACF,CAAC;QACJ,CAAC;QACD,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;YACvB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,kBAAkB,EAAE,CAAC;gBAC1C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;YAC9C,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE;aAC3D,CAAC;QACJ,CAAC;QACD;YACE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IAC5E,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ export * from "./client.js";
2
+ export * from "./drops.js";
3
+ export * from "./file-uploads.js";
4
+ export * from "./ide-commands.js";
5
+ export * from "./pane-commands.js";
6
+ export * from "./pane-model.js";
7
+ export * from "./panes.js";
8
+ export * from "./runtime.js";
9
+ export * from "./state.js";
10
+ export * from "./terminal.js";
11
+ export * from "./worktree-local-files.js";
12
+ export * from "./ws-events.js";
13
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,13 @@
1
+ export * from "./client.js";
2
+ export * from "./drops.js";
3
+ export * from "./file-uploads.js";
4
+ export * from "./ide-commands.js";
5
+ export * from "./pane-commands.js";
6
+ export * from "./pane-model.js";
7
+ export * from "./panes.js";
8
+ export * from "./runtime.js";
9
+ export * from "./state.js";
10
+ export * from "./terminal.js";
11
+ export * from "./worktree-local-files.js";
12
+ export * from "./ws-events.js";
13
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,14 @@
1
+ export interface WorktreeLocalFileCandidate {
2
+ path: string;
3
+ size: number;
4
+ }
5
+ export type WorktreeLocalFileCopyStatus = "copied" | "skipped" | "failed";
6
+ export interface WorktreeLocalFileCopyResult {
7
+ path: string;
8
+ status: WorktreeLocalFileCopyStatus;
9
+ reason?: string;
10
+ size?: number;
11
+ }
12
+ export declare function normalizeWorktreeLocalFileAllowlist(value: unknown): string[];
13
+ export declare function normalizeWorktreeLocalFilePath(value: string): string | null;
14
+ //# sourceMappingURL=worktree-local-files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktree-local-files.d.ts","sourceRoot":"","sources":["../src/worktree-local-files.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,2BAA2B,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE1E,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,2BAA2B,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAKD,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAc5E;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmB3E"}
@@ -0,0 +1,41 @@
1
+ const MAX_ALLOWLIST_ITEMS = 100;
2
+ const MAX_LOCAL_FILE_PATH_LENGTH = 500;
3
+ export function normalizeWorktreeLocalFileAllowlist(value) {
4
+ if (!Array.isArray(value))
5
+ return [];
6
+ const out = [];
7
+ const seen = new Set();
8
+ for (const item of value) {
9
+ if (typeof item !== "string")
10
+ continue;
11
+ const normalized = normalizeWorktreeLocalFilePath(item);
12
+ if (!normalized || seen.has(normalized))
13
+ continue;
14
+ seen.add(normalized);
15
+ out.push(normalized);
16
+ if (out.length >= MAX_ALLOWLIST_ITEMS)
17
+ break;
18
+ }
19
+ return out;
20
+ }
21
+ export function normalizeWorktreeLocalFilePath(value) {
22
+ const trimmed = value.trim().replace(/\\/g, "/");
23
+ if (!trimmed ||
24
+ trimmed.length > MAX_LOCAL_FILE_PATH_LENGTH ||
25
+ trimmed.startsWith("/") ||
26
+ trimmed.includes("\0")) {
27
+ return null;
28
+ }
29
+ const parts = [];
30
+ for (const part of trimmed.split("/")) {
31
+ if (!part || part === ".")
32
+ continue;
33
+ if (part === "..")
34
+ return null;
35
+ parts.push(part);
36
+ }
37
+ if (parts.length === 0)
38
+ return null;
39
+ return parts.join("/");
40
+ }
41
+ //# sourceMappingURL=worktree-local-files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktree-local-files.js","sourceRoot":"","sources":["../src/worktree-local-files.ts"],"names":[],"mappings":"AAcA,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAEvC,MAAM,UAAU,mCAAmC,CAAC,KAAc;IAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAErC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QACvC,MAAM,UAAU,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,SAAS;QAClD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrB,IAAI,GAAG,CAAC,MAAM,IAAI,mBAAmB;YAAE,MAAM;IAC/C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,KAAa;IAC1D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjD,IACE,CAAC,OAAO;QACR,OAAO,CAAC,MAAM,GAAG,0BAA0B;QAC3C,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EACtB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG;YAAE,SAAS;QACpC,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,152 @@
1
+ import type { IdeCommandConfig } from "./ide-commands.js";
2
+ import type { PaneCommandConfig } from "./pane-commands.js";
3
+ import type { WorktreePanes } from "./pane-model.js";
4
+ import type { PaneNode } from "./panes.js";
5
+ import type { AgentState, GitState, Notification, PortInfo, Worktree } from "./runtime.js";
6
+ import type { AppState, Project, ServiceConfig, Session, SessionEndReason } from "./state.js";
7
+ export type WsEventMessage = {
8
+ type: "session-created";
9
+ session: Session;
10
+ } | {
11
+ type: "session-closed";
12
+ sessionId: string;
13
+ projectId: string;
14
+ } | {
15
+ type: "agent-state";
16
+ state: AgentState;
17
+ } | {
18
+ type: "notification";
19
+ notification: Notification;
20
+ } | {
21
+ type: "project-created";
22
+ project: Project;
23
+ } | {
24
+ type: "project-updated";
25
+ project: Project;
26
+ } | {
27
+ type: "project-deleted";
28
+ projectId: string;
29
+ } | {
30
+ type: "worktree-created";
31
+ projectId: string;
32
+ worktree: Worktree;
33
+ } | {
34
+ type: "worktree-renamed";
35
+ projectId: string;
36
+ worktreePath: string;
37
+ oldBranch: string;
38
+ newBranch: string;
39
+ } | {
40
+ type: "worktree-removed";
41
+ projectId: string;
42
+ worktreePath: string;
43
+ } | {
44
+ type: "app-state-snapshot";
45
+ payload: HydrationPayload;
46
+ } | {
47
+ type: "layout-updated";
48
+ projectId: string;
49
+ layout: PaneNode | null;
50
+ } | {
51
+ type: "panes-updated";
52
+ projectId: string;
53
+ worktrees: WorktreePanes[];
54
+ focusedPaneId: string | null;
55
+ } | {
56
+ type: "session-restarted";
57
+ session: Session;
58
+ generation: number;
59
+ } | {
60
+ type: "session-ended";
61
+ sessionId: string;
62
+ generation: number;
63
+ endReason: SessionEndReason;
64
+ error?: string;
65
+ } | {
66
+ type: "browser-url-changed";
67
+ paneId: string;
68
+ url: string;
69
+ } | {
70
+ type: "filetree-expanded";
71
+ paneId: string;
72
+ path: string;
73
+ expanded: boolean;
74
+ } | {
75
+ type: "ports-updated";
76
+ projectId: string;
77
+ ports: PortInfo[];
78
+ } | {
79
+ type: "git-state";
80
+ projectId: string;
81
+ worktreePath: string;
82
+ state: GitState | null;
83
+ } | {
84
+ type: "file-change";
85
+ projectId: string;
86
+ event: "create" | "update" | "delete";
87
+ path: string;
88
+ } | {
89
+ type: "gitignore-updated";
90
+ projectId: string;
91
+ } | {
92
+ type: "session-cwd-changed";
93
+ sessionId: string;
94
+ cwd: string;
95
+ } | {
96
+ type: "session-title-changed";
97
+ sessionId: string;
98
+ title: string;
99
+ titleManual?: boolean;
100
+ } | {
101
+ type: "session-pin-changed";
102
+ sessionId: string;
103
+ pinned: boolean;
104
+ } | {
105
+ type: "service-config-changed";
106
+ config: ServiceConfig;
107
+ } | {
108
+ type: "pane-commands-changed";
109
+ commands: PaneCommandConfig[];
110
+ } | {
111
+ type: "ide-commands-changed";
112
+ commands: IdeCommandConfig[];
113
+ } | {
114
+ type: "pong";
115
+ ts: number;
116
+ };
117
+ /**
118
+ * Client->server messages on `/ws/events`. Heartbeat ping; the server
119
+ * echoes a `pong` carrying the same `ts` so the client can detect
120
+ * silent-dead TCP paths (NAT idle timeout, mobile background freeze)
121
+ * where `ws.close` never fires.
122
+ */
123
+ export type WsEventClientMessage = {
124
+ type: "ping";
125
+ ts: number;
126
+ };
127
+ export interface HydrationPayload {
128
+ seq: number;
129
+ state: AppState;
130
+ agentStates: Record<string, AgentState>;
131
+ notifications: Notification[];
132
+ ports: Record<string, PortInfo[]>;
133
+ /**
134
+ * Per-worktree git state, grouped by project. Outer key = projectId,
135
+ * inner key = absolute worktree path. The project's main checkout
136
+ * appears under its own path entry (no implicit "main" alias).
137
+ */
138
+ gitStates: Record<string, Record<string, GitState | null>>;
139
+ /** Per-project worktree list (`git worktree list --porcelain` snapshot). */
140
+ worktrees: Record<string, Worktree[]>;
141
+ /**
142
+ * Node process.platform of the host running parasor server. Web clients
143
+ * use this to gate platform-specific UI (e.g. macOS-only service
144
+ * toggles).
145
+ */
146
+ hostPlatform: NodeJS.Platform;
147
+ }
148
+ export interface WsEventEnvelope {
149
+ seq: number;
150
+ message: WsEventMessage;
151
+ }
152
+ //# sourceMappingURL=ws-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-events.d.ts","sourceRoot":"","sources":["../src/ws-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ws-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-events.js","sourceRoot":"","sources":["../src/ws-events.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "@parasor/shared",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "exports": {
6
+ ".": {
7
+ "types": "./dist/types.d.ts",
8
+ "default": "./dist/types.js"
9
+ }
10
+ },
11
+ "main": "./dist/types.js",
12
+ "types": "./dist/types.d.ts"
13
+ }