@nimbus-sh/worker 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 (408) hide show
  1. package/README.md +219 -0
  2. package/dist/_shared/bytes.d.ts +18 -0
  3. package/dist/_shared/bytes.d.ts.map +1 -0
  4. package/dist/_shared/bytes.js +17 -0
  5. package/dist/_shared/cache-stats.d.ts +146 -0
  6. package/dist/_shared/cache-stats.d.ts.map +1 -0
  7. package/dist/_shared/cache-stats.js +162 -0
  8. package/dist/_shared/exports-resolver.d.ts +76 -0
  9. package/dist/_shared/exports-resolver.d.ts.map +1 -0
  10. package/dist/_shared/exports-resolver.js +284 -0
  11. package/dist/_shared/install-phase.d.ts +47 -0
  12. package/dist/_shared/install-phase.d.ts.map +1 -0
  13. package/dist/_shared/install-phase.js +1 -0
  14. package/dist/_shared/real-node-imports.d.ts +38 -0
  15. package/dist/_shared/real-node-imports.d.ts.map +1 -0
  16. package/dist/_shared/real-node-imports.js +46 -0
  17. package/dist/_shared/retry.d.ts +93 -0
  18. package/dist/_shared/retry.d.ts.map +1 -0
  19. package/dist/_shared/retry.js +161 -0
  20. package/dist/_shared/session-id.d.ts +39 -0
  21. package/dist/_shared/session-id.d.ts.map +1 -0
  22. package/dist/_shared/session-id.js +127 -0
  23. package/dist/_shared/session-router.d.ts +104 -0
  24. package/dist/_shared/session-router.d.ts.map +1 -0
  25. package/dist/_shared/session-router.js +165 -0
  26. package/dist/_shared/w7-frame.d.ts +93 -0
  27. package/dist/_shared/w7-frame.d.ts.map +1 -0
  28. package/dist/_shared/w7-frame.js +402 -0
  29. package/dist/auth/index.d.ts +16 -0
  30. package/dist/auth/index.d.ts.map +1 -0
  31. package/dist/auth/index.js +15 -0
  32. package/dist/auth/middleware.d.ts +85 -0
  33. package/dist/auth/middleware.d.ts.map +1 -0
  34. package/dist/auth/middleware.js +150 -0
  35. package/dist/auth/token.d.ts +96 -0
  36. package/dist/auth/token.d.ts.map +1 -0
  37. package/dist/auth/token.js +226 -0
  38. package/dist/auth/types.d.ts +141 -0
  39. package/dist/auth/types.d.ts.map +1 -0
  40. package/dist/auth/types.js +114 -0
  41. package/dist/bindings/d1.d.ts +102 -0
  42. package/dist/bindings/d1.d.ts.map +1 -0
  43. package/dist/bindings/d1.js +549 -0
  44. package/dist/bindings/kv.d.ts +82 -0
  45. package/dist/bindings/kv.d.ts.map +1 -0
  46. package/dist/bindings/kv.js +290 -0
  47. package/dist/bindings/r2.d.ts +137 -0
  48. package/dist/bindings/r2.d.ts.map +1 -0
  49. package/dist/bindings/r2.js +379 -0
  50. package/dist/cirrus-npm-cjs.generated.d.ts +17 -0
  51. package/dist/cirrus-npm-cjs.generated.d.ts.map +1 -0
  52. package/dist/cirrus-npm-cjs.generated.js +41 -0
  53. package/dist/cirrus-plugin-react.generated.d.ts +34 -0
  54. package/dist/cirrus-plugin-react.generated.d.ts.map +1 -0
  55. package/dist/cirrus-plugin-react.generated.js +33 -0
  56. package/dist/constants.d.ts +34 -0
  57. package/dist/constants.d.ts.map +1 -0
  58. package/dist/constants.js +116 -0
  59. package/dist/esbuild-wasm-bundle.generated.d.ts +41 -0
  60. package/dist/esbuild-wasm-bundle.generated.d.ts.map +1 -0
  61. package/dist/esbuild-wasm-bundle.generated.js +40 -0
  62. package/dist/facets/cirrus-real.d.ts +147 -0
  63. package/dist/facets/cirrus-real.d.ts.map +1 -0
  64. package/dist/facets/cirrus-real.js +981 -0
  65. package/dist/facets/inner-do-registry.d.ts +41 -0
  66. package/dist/facets/inner-do-registry.d.ts.map +1 -0
  67. package/dist/facets/inner-do-registry.js +51 -0
  68. package/dist/facets/manager.d.ts +314 -0
  69. package/dist/facets/manager.d.ts.map +1 -0
  70. package/dist/facets/manager.js +2681 -0
  71. package/dist/facets/process.d.ts +318 -0
  72. package/dist/facets/process.d.ts.map +1 -0
  73. package/dist/facets/process.js +567 -0
  74. package/dist/facets/real-vite-fs-shim.d.ts +151 -0
  75. package/dist/facets/real-vite-fs-shim.d.ts.map +1 -0
  76. package/dist/facets/real-vite-fs-shim.js +1279 -0
  77. package/dist/facets/real-vite-hmr.d.ts +142 -0
  78. package/dist/facets/real-vite-hmr.d.ts.map +1 -0
  79. package/dist/facets/real-vite-hmr.js +476 -0
  80. package/dist/facets/vite-dev-server.d.ts +293 -0
  81. package/dist/facets/vite-dev-server.d.ts.map +1 -0
  82. package/dist/facets/vite-dev-server.js +2580 -0
  83. package/dist/facets/wasm-swap-registry.d.ts +261 -0
  84. package/dist/facets/wasm-swap-registry.d.ts.map +1 -0
  85. package/dist/facets/wasm-swap-registry.js +551 -0
  86. package/dist/facets/ws-terminal.d.ts +107 -0
  87. package/dist/facets/ws-terminal.d.ts.map +1 -0
  88. package/dist/facets/ws-terminal.js +207 -0
  89. package/dist/git/commands.d.ts +13 -0
  90. package/dist/git/commands.d.ts.map +1 -0
  91. package/dist/git/commands.js +633 -0
  92. package/dist/git/network-facet.d.ts +61 -0
  93. package/dist/git/network-facet.d.ts.map +1 -0
  94. package/dist/git/network-facet.js +700 -0
  95. package/dist/git-bundle.generated.d.ts +16 -0
  96. package/dist/git-bundle.generated.d.ts.map +1 -0
  97. package/dist/git-bundle.generated.js +15 -0
  98. package/dist/index.d.ts +41 -0
  99. package/dist/index.d.ts.map +1 -0
  100. package/dist/index.js +73 -0
  101. package/dist/loaders/child-process/spawn-facet.d.ts +90 -0
  102. package/dist/loaders/child-process/spawn-facet.d.ts.map +1 -0
  103. package/dist/loaders/child-process/spawn-facet.js +103 -0
  104. package/dist/loaders/child-process/spawn-pool.d.ts +110 -0
  105. package/dist/loaders/child-process/spawn-pool.d.ts.map +1 -0
  106. package/dist/loaders/child-process/spawn-pool.js +161 -0
  107. package/dist/loaders/fanout-pool.d.ts +195 -0
  108. package/dist/loaders/fanout-pool.d.ts.map +1 -0
  109. package/dist/loaders/fanout-pool.js +326 -0
  110. package/dist/loaders/generated-workers.d.ts +26 -0
  111. package/dist/loaders/generated-workers.d.ts.map +1 -0
  112. package/dist/loaders/generated-workers.js +25 -0
  113. package/dist/loaders/index.d.ts +15 -0
  114. package/dist/loaders/index.d.ts.map +1 -0
  115. package/dist/loaders/index.js +13 -0
  116. package/dist/loaders/loader-pool.d.ts +273 -0
  117. package/dist/loaders/loader-pool.d.ts.map +1 -0
  118. package/dist/loaders/loader-pool.js +624 -0
  119. package/dist/loaders/npm-resolve-preamble.d.ts +34 -0
  120. package/dist/loaders/npm-resolve-preamble.d.ts.map +1 -0
  121. package/dist/loaders/npm-resolve-preamble.js +237 -0
  122. package/dist/loaders/pre-bundle-preamble.d.ts +41 -0
  123. package/dist/loaders/pre-bundle-preamble.d.ts.map +1 -0
  124. package/dist/loaders/pre-bundle-preamble.js +114 -0
  125. package/dist/loaders/vendor/codegen.d.ts +24 -0
  126. package/dist/loaders/vendor/codegen.d.ts.map +1 -0
  127. package/dist/loaders/vendor/codegen.js +44 -0
  128. package/dist/loaders/vendor/errors.d.ts +24 -0
  129. package/dist/loaders/vendor/errors.d.ts.map +1 -0
  130. package/dist/loaders/vendor/errors.js +46 -0
  131. package/dist/loaders/vendor/index.d.ts +16 -0
  132. package/dist/loaders/vendor/index.d.ts.map +1 -0
  133. package/dist/loaders/vendor/index.js +11 -0
  134. package/dist/loaders/vendor/pool.d.ts +88 -0
  135. package/dist/loaders/vendor/pool.d.ts.map +1 -0
  136. package/dist/loaders/vendor/pool.js +353 -0
  137. package/dist/loaders/vendor/primitives.d.ts +11 -0
  138. package/dist/loaders/vendor/primitives.d.ts.map +1 -0
  139. package/dist/loaders/vendor/primitives.js +33 -0
  140. package/dist/loaders/vendor/serialize.d.ts +3 -0
  141. package/dist/loaders/vendor/serialize.d.ts.map +1 -0
  142. package/dist/loaders/vendor/serialize.js +25 -0
  143. package/dist/loaders/vendor/types.d.ts +60 -0
  144. package/dist/loaders/vendor/types.d.ts.map +1 -0
  145. package/dist/loaders/vendor/types.js +4 -0
  146. package/dist/npm/cache.d.ts +136 -0
  147. package/dist/npm/cache.d.ts.map +1 -0
  148. package/dist/npm/cache.js +429 -0
  149. package/dist/npm/install-batch-facet.d.ts +129 -0
  150. package/dist/npm/install-batch-facet.d.ts.map +1 -0
  151. package/dist/npm/install-batch-facet.js +598 -0
  152. package/dist/npm/install-facet.d.ts +29 -0
  153. package/dist/npm/install-facet.d.ts.map +1 -0
  154. package/dist/npm/install-facet.js +9 -0
  155. package/dist/npm/installer.d.ts +239 -0
  156. package/dist/npm/installer.d.ts.map +1 -0
  157. package/dist/npm/installer.js +2022 -0
  158. package/dist/npm/npx-install.d.ts +74 -0
  159. package/dist/npm/npx-install.d.ts.map +1 -0
  160. package/dist/npm/npx-install.js +302 -0
  161. package/dist/npm/pre-bundle-facet.d.ts +168 -0
  162. package/dist/npm/pre-bundle-facet.d.ts.map +1 -0
  163. package/dist/npm/pre-bundle-facet.js +653 -0
  164. package/dist/npm/r2-cache.d.ts +286 -0
  165. package/dist/npm/r2-cache.d.ts.map +1 -0
  166. package/dist/npm/r2-cache.js +506 -0
  167. package/dist/npm/resolve-facet.d.ts +202 -0
  168. package/dist/npm/resolve-facet.d.ts.map +1 -0
  169. package/dist/npm/resolve-facet.js +833 -0
  170. package/dist/npm/resolve-one-facet.d.ts +204 -0
  171. package/dist/npm/resolve-one-facet.d.ts.map +1 -0
  172. package/dist/npm/resolve-one-facet.js +437 -0
  173. package/dist/npm/resolver.d.ts +109 -0
  174. package/dist/npm/resolver.d.ts.map +1 -0
  175. package/dist/npm/resolver.js +899 -0
  176. package/dist/npm/tarball-stream.d.ts +85 -0
  177. package/dist/npm/tarball-stream.d.ts.map +1 -0
  178. package/dist/npm/tarball-stream.js +205 -0
  179. package/dist/npm/tarball.d.ts +51 -0
  180. package/dist/npm/tarball.d.ts.map +1 -0
  181. package/dist/npm/tarball.js +185 -0
  182. package/dist/observability/diag-counters.d.ts +292 -0
  183. package/dist/observability/diag-counters.d.ts.map +1 -0
  184. package/dist/observability/diag-counters.js +302 -0
  185. package/dist/observability/heap-estimate.d.ts +166 -0
  186. package/dist/observability/heap-estimate.d.ts.map +1 -0
  187. package/dist/observability/heap-estimate.js +192 -0
  188. package/dist/observability/heavy-alloc-coord.d.ts +95 -0
  189. package/dist/observability/heavy-alloc-coord.d.ts.map +1 -0
  190. package/dist/observability/heavy-alloc-coord.js +149 -0
  191. package/dist/observability/oom-classify.d.ts +56 -0
  192. package/dist/observability/oom-classify.d.ts.map +1 -0
  193. package/dist/observability/oom-classify.js +118 -0
  194. package/dist/observability/oom-discriminator.d.ts +192 -0
  195. package/dist/observability/oom-discriminator.d.ts.map +1 -0
  196. package/dist/observability/oom-discriminator.js +233 -0
  197. package/dist/real-vite-bundle.generated.d.ts +46 -0
  198. package/dist/real-vite-bundle.generated.d.ts.map +1 -0
  199. package/dist/real-vite-bundle.generated.js +53 -0
  200. package/dist/replica/routing.d.ts +171 -0
  201. package/dist/replica/routing.d.ts.map +1 -0
  202. package/dist/replica/routing.js +288 -0
  203. package/dist/replica/suspension.d.ts +36 -0
  204. package/dist/replica/suspension.d.ts.map +1 -0
  205. package/dist/replica/suspension.js +49 -0
  206. package/dist/router/index.d.ts +156 -0
  207. package/dist/router/index.d.ts.map +1 -0
  208. package/dist/router/index.js +220 -0
  209. package/dist/runtime/assets-loader.d.ts +71 -0
  210. package/dist/runtime/assets-loader.d.ts.map +1 -0
  211. package/dist/runtime/assets-loader.js +128 -0
  212. package/dist/runtime/barrel-detect.d.ts +46 -0
  213. package/dist/runtime/barrel-detect.d.ts.map +1 -0
  214. package/dist/runtime/barrel-detect.js +73 -0
  215. package/dist/runtime/barrel-synthesizer.d.ts +181 -0
  216. package/dist/runtime/barrel-synthesizer.d.ts.map +1 -0
  217. package/dist/runtime/barrel-synthesizer.js +541 -0
  218. package/dist/runtime/bun-repl.d.ts +46 -0
  219. package/dist/runtime/bun-repl.d.ts.map +1 -0
  220. package/dist/runtime/bun-repl.js +326 -0
  221. package/dist/runtime/bun-runner.d.ts +66 -0
  222. package/dist/runtime/bun-runner.d.ts.map +1 -0
  223. package/dist/runtime/bun-runner.js +219 -0
  224. package/dist/runtime/clang-runner.d.ts +38 -0
  225. package/dist/runtime/clang-runner.d.ts.map +1 -0
  226. package/dist/runtime/clang-runner.js +1033 -0
  227. package/dist/runtime/comment-strip.d.ts +37 -0
  228. package/dist/runtime/comment-strip.d.ts.map +1 -0
  229. package/dist/runtime/comment-strip.js +74 -0
  230. package/dist/runtime/esbuild-service.d.ts +201 -0
  231. package/dist/runtime/esbuild-service.d.ts.map +1 -0
  232. package/dist/runtime/esbuild-service.js +1444 -0
  233. package/dist/runtime/esbuild-wasm-bytes.d.ts +87 -0
  234. package/dist/runtime/esbuild-wasm-bytes.d.ts.map +1 -0
  235. package/dist/runtime/esbuild-wasm-bytes.js +131 -0
  236. package/dist/runtime/framework-detect.d.ts +71 -0
  237. package/dist/runtime/framework-detect.d.ts.map +1 -0
  238. package/dist/runtime/framework-detect.js +178 -0
  239. package/dist/runtime/long-running-handle.d.ts +133 -0
  240. package/dist/runtime/long-running-handle.d.ts.map +1 -0
  241. package/dist/runtime/long-running-handle.js +192 -0
  242. package/dist/runtime/node-repl.d.ts +36 -0
  243. package/dist/runtime/node-repl.d.ts.map +1 -0
  244. package/dist/runtime/node-repl.js +293 -0
  245. package/dist/runtime/node-runner.d.ts +111 -0
  246. package/dist/runtime/node-runner.d.ts.map +1 -0
  247. package/dist/runtime/node-runner.js +194 -0
  248. package/dist/runtime/node-shims.d.ts +24 -0
  249. package/dist/runtime/node-shims.d.ts.map +1 -0
  250. package/dist/runtime/node-shims.js +3019 -0
  251. package/dist/runtime/package-manager.d.ts +118 -0
  252. package/dist/runtime/package-manager.d.ts.map +1 -0
  253. package/dist/runtime/package-manager.js +420 -0
  254. package/dist/runtime/port-registry.d.ts +80 -0
  255. package/dist/runtime/port-registry.d.ts.map +1 -0
  256. package/dist/runtime/port-registry.js +166 -0
  257. package/dist/runtime/process-logs-api.d.ts +102 -0
  258. package/dist/runtime/process-logs-api.d.ts.map +1 -0
  259. package/dist/runtime/process-logs-api.js +253 -0
  260. package/dist/runtime/process-logs.d.ts +311 -0
  261. package/dist/runtime/process-logs.d.ts.map +1 -0
  262. package/dist/runtime/process-logs.js +656 -0
  263. package/dist/runtime/process-table.d.ts +65 -0
  264. package/dist/runtime/process-table.d.ts.map +1 -0
  265. package/dist/runtime/process-table.js +107 -0
  266. package/dist/runtime/project-detect.d.ts +21 -0
  267. package/dist/runtime/project-detect.d.ts.map +1 -0
  268. package/dist/runtime/project-detect.js +46 -0
  269. package/dist/runtime/python-repl.d.ts +66 -0
  270. package/dist/runtime/python-repl.d.ts.map +1 -0
  271. package/dist/runtime/python-repl.js +563 -0
  272. package/dist/runtime/python-runner.d.ts +50 -0
  273. package/dist/runtime/python-runner.d.ts.map +1 -0
  274. package/dist/runtime/python-runner.js +870 -0
  275. package/dist/runtime/repl-session.d.ts +160 -0
  276. package/dist/runtime/repl-session.d.ts.map +1 -0
  277. package/dist/runtime/repl-session.js +393 -0
  278. package/dist/runtime/require-resolver.d.ts +52 -0
  279. package/dist/runtime/require-resolver.d.ts.map +1 -0
  280. package/dist/runtime/require-resolver.js +690 -0
  281. package/dist/runtime/router-basename.d.ts +36 -0
  282. package/dist/runtime/router-basename.d.ts.map +1 -0
  283. package/dist/runtime/router-basename.js +310 -0
  284. package/dist/runtime/ruby-repl.d.ts +43 -0
  285. package/dist/runtime/ruby-repl.d.ts.map +1 -0
  286. package/dist/runtime/ruby-repl.js +229 -0
  287. package/dist/runtime/ruby-runner.d.ts +62 -0
  288. package/dist/runtime/ruby-runner.d.ts.map +1 -0
  289. package/dist/runtime/ruby-runner.js +737 -0
  290. package/dist/runtime/runtime-catalog.d.ts +99 -0
  291. package/dist/runtime/runtime-catalog.d.ts.map +1 -0
  292. package/dist/runtime/runtime-catalog.js +183 -0
  293. package/dist/runtime/runtime-registry.d.ts +136 -0
  294. package/dist/runtime/runtime-registry.d.ts.map +1 -0
  295. package/dist/runtime/runtime-registry.js +318 -0
  296. package/dist/runtime/streams.d.ts +13 -0
  297. package/dist/runtime/streams.d.ts.map +1 -0
  298. package/dist/runtime/streams.js +402 -0
  299. package/dist/runtime/wasi-instance.d.ts +190 -0
  300. package/dist/runtime/wasi-instance.d.ts.map +1 -0
  301. package/dist/runtime/wasi-instance.js +2044 -0
  302. package/dist/runtime/wasm-runner.d.ts +117 -0
  303. package/dist/runtime/wasm-runner.d.ts.map +1 -0
  304. package/dist/runtime/wasm-runner.js +705 -0
  305. package/dist/session/bindings.d.ts +168 -0
  306. package/dist/session/bindings.d.ts.map +1 -0
  307. package/dist/session/bindings.js +524 -0
  308. package/dist/session/ctx-exports.d.ts +16 -0
  309. package/dist/session/ctx-exports.d.ts.map +1 -0
  310. package/dist/session/ctx-exports.js +22 -0
  311. package/dist/session/diag.d.ts +62 -0
  312. package/dist/session/diag.d.ts.map +1 -0
  313. package/dist/session/diag.js +118 -0
  314. package/dist/session/fs-watch.d.ts +132 -0
  315. package/dist/session/fs-watch.d.ts.map +1 -0
  316. package/dist/session/fs-watch.js +255 -0
  317. package/dist/session/helpers.d.ts +150 -0
  318. package/dist/session/helpers.d.ts.map +1 -0
  319. package/dist/session/helpers.js +472 -0
  320. package/dist/session/hibernation.d.ts +145 -0
  321. package/dist/session/hibernation.d.ts.map +1 -0
  322. package/dist/session/hibernation.js +385 -0
  323. package/dist/session/init-phases.d.ts +87 -0
  324. package/dist/session/init-phases.d.ts.map +1 -0
  325. package/dist/session/init-phases.js +137 -0
  326. package/dist/session/init.d.ts +46 -0
  327. package/dist/session/init.d.ts.map +1 -0
  328. package/dist/session/init.js +3579 -0
  329. package/dist/session/keys.d.ts +56 -0
  330. package/dist/session/keys.d.ts.map +1 -0
  331. package/dist/session/keys.js +55 -0
  332. package/dist/session/nimbus-session.d.ts +434 -0
  333. package/dist/session/nimbus-session.d.ts.map +1 -0
  334. package/dist/session/nimbus-session.js +1084 -0
  335. package/dist/session/programmatic.d.ts +105 -0
  336. package/dist/session/programmatic.d.ts.map +1 -0
  337. package/dist/session/programmatic.js +326 -0
  338. package/dist/session/replica-routes.d.ts +68 -0
  339. package/dist/session/replica-routes.d.ts.map +1 -0
  340. package/dist/session/replica-routes.js +77 -0
  341. package/dist/session/routes.d.ts +29 -0
  342. package/dist/session/routes.d.ts.map +1 -0
  343. package/dist/session/routes.js +1331 -0
  344. package/dist/session/rpc.d.ts +323 -0
  345. package/dist/session/rpc.d.ts.map +1 -0
  346. package/dist/session/rpc.js +808 -0
  347. package/dist/session/state-store.d.ts +210 -0
  348. package/dist/session/state-store.d.ts.map +1 -0
  349. package/dist/session/state-store.js +459 -0
  350. package/dist/session/supervisor-rpc.d.ts +269 -0
  351. package/dist/session/supervisor-rpc.d.ts.map +1 -0
  352. package/dist/session/supervisor-rpc.js +437 -0
  353. package/dist/session/ws-hibernation-config.d.ts +64 -0
  354. package/dist/session/ws-hibernation-config.d.ts.map +1 -0
  355. package/dist/session/ws-hibernation-config.js +89 -0
  356. package/dist/session/ws.d.ts +95 -0
  357. package/dist/session/ws.d.ts.map +1 -0
  358. package/dist/session/ws.js +395 -0
  359. package/dist/shell/features.d.ts +410 -0
  360. package/dist/shell/features.d.ts.map +1 -0
  361. package/dist/shell/features.js +1885 -0
  362. package/dist/shell/unix-commands.d.ts +15 -0
  363. package/dist/shell/unix-commands.d.ts.map +1 -0
  364. package/dist/shell/unix-commands.js +3703 -0
  365. package/dist/stubs/lifo-ui.d.ts +10 -0
  366. package/dist/stubs/lifo-ui.d.ts.map +1 -0
  367. package/dist/stubs/lifo-ui.js +1 -0
  368. package/dist/tailwind-play.generated.d.ts +19 -0
  369. package/dist/tailwind-play.generated.d.ts.map +1 -0
  370. package/dist/tailwind-play.generated.js +18 -0
  371. package/dist/vfs/dev-provider.d.ts +64 -0
  372. package/dist/vfs/dev-provider.d.ts.map +1 -0
  373. package/dist/vfs/dev-provider.js +191 -0
  374. package/dist/vfs/events.d.ts +51 -0
  375. package/dist/vfs/events.d.ts.map +1 -0
  376. package/dist/vfs/events.js +127 -0
  377. package/dist/vfs/path.d.ts +30 -0
  378. package/dist/vfs/path.d.ts.map +1 -0
  379. package/dist/vfs/path.js +41 -0
  380. package/dist/vfs/seed-project.d.ts +62 -0
  381. package/dist/vfs/seed-project.d.ts.map +1 -0
  382. package/dist/vfs/seed-project.js +1045 -0
  383. package/dist/vfs/sqlite-vfs.d.ts +435 -0
  384. package/dist/vfs/sqlite-vfs.d.ts.map +1 -0
  385. package/dist/vfs/sqlite-vfs.js +1670 -0
  386. package/dist/vfs/symlink-registry.d.ts +64 -0
  387. package/dist/vfs/symlink-registry.d.ts.map +1 -0
  388. package/dist/vfs/symlink-registry.js +137 -0
  389. package/dist/wrangler/nimbus-wrangler.d.ts +157 -0
  390. package/dist/wrangler/nimbus-wrangler.d.ts.map +1 -0
  391. package/dist/wrangler/nimbus-wrangler.js +931 -0
  392. package/package.json +77 -0
  393. package/public/_assets/cirrus-plugin-react.bundle.js +70740 -0
  394. package/public/_assets/esbuild-0.24.2.wasm +0 -0
  395. package/public/_assets/real-vite-bundle.js +101478 -0
  396. package/public/_assets/rollup.wasm +0 -0
  397. package/public/favicon.svg +8 -0
  398. package/public/index.html +565 -0
  399. package/public/s/index.html +2379 -0
  400. package/scripts/bundle-esbuild-wasm.mjs +244 -0
  401. package/scripts/bundle-facet-workers.mjs +137 -0
  402. package/scripts/bundle-git.mjs +118 -0
  403. package/scripts/bundle-npm-cjs.mjs +363 -0
  404. package/scripts/bundle-plugin-react.mjs +480 -0
  405. package/scripts/bundle-real-vite.mjs +959 -0
  406. package/scripts/bundle-runtime.mjs +600 -0
  407. package/scripts/bundle-tailwind-play.mjs +130 -0
  408. package/scripts/patch-lifo-ui.mjs +131 -0
@@ -0,0 +1,56 @@
1
+ /**
2
+ * session/keys.ts — DO-storage key constants.
3
+ *
4
+ * Centralised to keep the storage namespace grep-able in one place.
5
+ * Renaming or adding a key forces a touch here, which forces the
6
+ * change to be reviewed alongside the migration plan (rename without
7
+ * migration = orphan rows).
8
+ *
9
+ * Originally `private static readonly` fields on NimbusSession itself;
10
+ * `NimbusSession`. Sibling modules (-hib.ts, -ws.ts) need to reference
11
+ * them, but `import type { NimbusSession }` provides no runtime
12
+ * binding and `private static readonly` is not reachable from outside
13
+ * the class anyway (TS-2341 + nominal-type rule). A dedicated leaf
14
+ * module solves both: every consumer imports the bare names directly.
15
+ *
16
+ * Stability contract:
17
+ * These keys persist DO state across deploys. Renaming any key is a
18
+ * storage migration — never do it without an explicit migration plan.
19
+ */
20
+ /** W9: storage key for the isolate-generation counter (cold-start +
21
+ * post-hibernation wake; one increment per fresh isolate). */
22
+ export declare const W9_ISOLATE_GEN_KEY = "w9_isolate_gen";
23
+ /** W9: debounce window in ms before flushing pending process-log writes
24
+ * to SQL. Hot path (every append schedules a flush via this debounce). */
25
+ export declare const W9_FLUSH_DEBOUNCE_MS = 250;
26
+ /** W5: storage key for the OOM-discriminator ring snapshot.
27
+ * Bounded ≤20 KB by oom-discriminator.ts; persisted on ws close/error
28
+ * so cf-tail-style forensics survive DO hibernation. */
29
+ export declare const W5_RING_STORAGE_KEY = "w5_oom_ring_v1";
30
+ /** Storage key for the session URL prefix (e.g. /s/nimble-otter-4271).
31
+ * Set once per session from the X-Nimbus-Base header. */
32
+ export declare const SESSION_BASE_PATH_KEY = "session-base-path";
33
+ /** Storage key for the persisted vite-config blob. Survives DO
34
+ * hibernation so vite resumes serving after wake without re-running
35
+ * /api/start-vite. */
36
+ export declare const VITE_CONFIG_KEY = "vite-config";
37
+ /** W1: multi-reason alarm coordination map.
38
+ *
39
+ * JSON-serialised `Record<reason, deadlineMsEpoch>` where keys are
40
+ * canonical reason strings (e.g. 'w9-flush', 'log-janitor'). The
41
+ * alarm() dispatcher reads this on fire, dispatches every reason
42
+ * whose deadline has passed, and re-arms `ctx.storage.setAlarm` at
43
+ * the earliest remaining deadline.
44
+ *
45
+ * Why a map (not a single nextAlarmAt + reason): two subsystems
46
+ * (W9 debounced flush + W1 log-janitor sweep) can have distinct
47
+ * deadlines. Without the map, the later setAlarm() call would
48
+ * overwrite the earlier reason silently, breaking whichever
49
+ * subsystem expected its deadline.
50
+ *
51
+ * Forward-compat: dispatcher silently drops unknown reasons so a
52
+ * rollback from a future deploy that added new reasons doesn't
53
+ * leave the alarm stuck.
54
+ */
55
+ export declare const W1_NEXT_ALARM_REASONS_KEY = "w1_next_alarm_reasons";
56
+ //# sourceMappingURL=keys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/session/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;+DAC+D;AAC/D,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AAEnD;2EAC2E;AAC3E,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC;;yDAEyD;AACzD,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAEpD;0DAC0D;AAC1D,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAEzD;;uBAEuB;AACvB,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAE7C;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,yBAAyB,0BAA0B,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * session/keys.ts — DO-storage key constants.
3
+ *
4
+ * Centralised to keep the storage namespace grep-able in one place.
5
+ * Renaming or adding a key forces a touch here, which forces the
6
+ * change to be reviewed alongside the migration plan (rename without
7
+ * migration = orphan rows).
8
+ *
9
+ * Originally `private static readonly` fields on NimbusSession itself;
10
+ * `NimbusSession`. Sibling modules (-hib.ts, -ws.ts) need to reference
11
+ * them, but `import type { NimbusSession }` provides no runtime
12
+ * binding and `private static readonly` is not reachable from outside
13
+ * the class anyway (TS-2341 + nominal-type rule). A dedicated leaf
14
+ * module solves both: every consumer imports the bare names directly.
15
+ *
16
+ * Stability contract:
17
+ * These keys persist DO state across deploys. Renaming any key is a
18
+ * storage migration — never do it without an explicit migration plan.
19
+ */
20
+ /** W9: storage key for the isolate-generation counter (cold-start +
21
+ * post-hibernation wake; one increment per fresh isolate). */
22
+ export const W9_ISOLATE_GEN_KEY = 'w9_isolate_gen';
23
+ /** W9: debounce window in ms before flushing pending process-log writes
24
+ * to SQL. Hot path (every append schedules a flush via this debounce). */
25
+ export const W9_FLUSH_DEBOUNCE_MS = 250;
26
+ /** W5: storage key for the OOM-discriminator ring snapshot.
27
+ * Bounded ≤20 KB by oom-discriminator.ts; persisted on ws close/error
28
+ * so cf-tail-style forensics survive DO hibernation. */
29
+ export const W5_RING_STORAGE_KEY = 'w5_oom_ring_v1';
30
+ /** Storage key for the session URL prefix (e.g. /s/nimble-otter-4271).
31
+ * Set once per session from the X-Nimbus-Base header. */
32
+ export const SESSION_BASE_PATH_KEY = 'session-base-path';
33
+ /** Storage key for the persisted vite-config blob. Survives DO
34
+ * hibernation so vite resumes serving after wake without re-running
35
+ * /api/start-vite. */
36
+ export const VITE_CONFIG_KEY = 'vite-config';
37
+ /** W1: multi-reason alarm coordination map.
38
+ *
39
+ * JSON-serialised `Record<reason, deadlineMsEpoch>` where keys are
40
+ * canonical reason strings (e.g. 'w9-flush', 'log-janitor'). The
41
+ * alarm() dispatcher reads this on fire, dispatches every reason
42
+ * whose deadline has passed, and re-arms `ctx.storage.setAlarm` at
43
+ * the earliest remaining deadline.
44
+ *
45
+ * Why a map (not a single nextAlarmAt + reason): two subsystems
46
+ * (W9 debounced flush + W1 log-janitor sweep) can have distinct
47
+ * deadlines. Without the map, the later setAlarm() call would
48
+ * overwrite the earlier reason silently, breaking whichever
49
+ * subsystem expected its deadline.
50
+ *
51
+ * Forward-compat: dispatcher silently drops unknown reasons so a
52
+ * rollback from a future deploy that added new reasons doesn't
53
+ * leave the alarm stuck.
54
+ */
55
+ export const W1_NEXT_ALARM_REASONS_KEY = 'w1_next_alarm_reasons';
@@ -0,0 +1,434 @@
1
+ /**
2
+ * nimbus-session.ts — NimbusSession Durable Object (v2.0).
3
+ *
4
+ * The supervisor DO that owns the VFS, shell, and all commands.
5
+ * `node` execution is delegated to dynamic workers via LOADER.load().
6
+ * IPC between facets and the supervisor flows through SupervisorRPC.
7
+ */
8
+ import { Kernel, Shell } from '@lifo-sh/core';
9
+ import { DurableObject as CloudflareDurableObject } from 'cloudflare:workers';
10
+ import { SqliteVFS } from '../vfs/sqlite-vfs.js';
11
+ import { WebSocketTerminal } from '../facets/ws-terminal.js';
12
+ import { FacetManager } from '../facets/manager.js';
13
+ import { ProcessTable } from '../runtime/process-table.js';
14
+ import { ProcessLogStore } from '../runtime/process-logs.js';
15
+ import type { WsHibernationConfigResult } from './hibernation.js';
16
+ import { PortRegistry } from '../runtime/port-registry.js';
17
+ import { EsbuildService } from '../runtime/esbuild-service.js';
18
+ import { ViteDevServer } from '../facets/vite-dev-server.js';
19
+ import { CirrusReal } from '../facets/cirrus-real.js';
20
+ import { NimbusWrangler } from '../wrangler/nimbus-wrangler.js';
21
+ import { NpmInstaller } from '../npm/installer.js';
22
+ import { type TryEnableReplicasResult as _W12EnableResult } from '../replica/routing.js';
23
+ import * as _programmatic from './programmatic.js';
24
+ export { filterWranglerFlags, detectBundlerBin, checkNodeModulesGuard, detectUnsupportedWranglerConfig, renderNoDevServerHtml, BUNDLER_BIN_PREFIXES, NIMBUS_UNSUPPORTED_BINS, WRANGLER_IGNORED_FLAGS, WRANGLER_IGNORED_FLAGS_WITH_VALUE, WRANGLER_UNSUPPORTED_CONFIG_FIELDS, } from './helpers.js';
25
+ export { detectCloudflareWorkersProject } from '../runtime/project-detect.js';
26
+ /**
27
+ * Render the welcome MOTD banner with column-counted padding so every
28
+ * line lands the right ║ on the same column regardless of how many
29
+ * non-ASCII characters (em-dash, middle-dot) the content contains.
30
+ *
31
+ * Width model: each "row" is built by left-aligning content into a
32
+ * fixed inner-width slot, then bracketed by ║ and padded with spaces.
33
+ * Codepoint count is used as the column count. This is correct for
34
+ * all characters in the current banner — box-drawing (U+2500-U+257F),
35
+ * em-dash (U+2014), and middle-dot (U+00B7) are all defined as
36
+ * 1-cell-wide in the Unicode East Asian Width table (`Na`/`A`/`N`).
37
+ *
38
+ * Why this exists: pre-fix, the banner used hand-counted padding
39
+ * literals. Adding/removing a single character (e.g. version bumping
40
+ * from "v2.0" to "v2.0.0") shifted line 2 by one column, breaking
41
+ * the right boundary. See user-debug-transcript.txt lines 1-5.
42
+ */
43
+ export declare function renderMotdBanner(version: string): string;
44
+ export declare class NimbusSession extends CloudflareDurableObject {
45
+ sqliteFs: SqliteVFS | null;
46
+ kernel: Kernel | null;
47
+ shell: Shell | null;
48
+ terminal: WebSocketTerminal | null;
49
+ facetManager: FacetManager | null;
50
+ /** W8: child_process broker. Lazy — only constructed when first cp* RPC arrives. */
51
+ facetProcessManager: any;
52
+ esbuildService: EsbuildService | null;
53
+ viteDevServer: ViteDevServer | null;
54
+ /**
55
+ * Primitives wave (P5): PID + port the default-Cirrus vite shim is
56
+ * registered under. Cleared on `vite stop`. See
57
+ * `runtime/long-running-handle.ts` and the vite handler in
58
+ * `session/init.ts`.
59
+ */
60
+ _viteShimPid: number | null;
61
+ _viteShimPort: number | null;
62
+ /**
63
+ * Opt-in real-vite mode (Phase 0 spike). Activated when the user sets
64
+ * NIMBUS_REAL_VITE=1 in the shell env or `nimbusDevServer: 'real'` in
65
+ * vite.config.ts. Runs real Vite in a dynamic-worker facet, bypassing
66
+ * the in-process Cirrus shim. Coexists with viteDevServer — only one
67
+ * is live per session.
68
+ */
69
+ cirrusReal: CirrusReal | null;
70
+ /**
71
+ * Map of HMR WebSocket (server-side) → clientId. Populated when the
72
+ * browser's @vite/client opens a connection at /preview/__nimbus_hmr;
73
+ * consumed by the message+close handlers on the WS itself.
74
+ * Non-hibernatable (we use server.accept(), not ctx.acceptWebSocket).
75
+ */
76
+ _cirrusHmrWsClients: Map<WebSocket, string> | null;
77
+ /** file-tree-watch (2026-05-15): per-WS fs-watch subscriptions.
78
+ * Lazily created on first fs-watch-subscribe by src/session/fs-watch.ts;
79
+ * cleaned up unconditionally in src/session/ws.ts on wsClose / wsError.
80
+ * Optional (undefined) until first subscribe so memory stays at 0
81
+ * for terminal-only sessions. */
82
+ _fsWatchSubs?: Map<WebSocket, import('./fs-watch.js').FsWatchSub[]>;
83
+ nimbusWrangler: NimbusWrangler | null;
84
+ npmInstaller: NpmInstaller | null;
85
+ /** Singleton fetch proxy entrypoint — created once, reused for all npm fetches. */
86
+ fetchProxyEntrypoint: any;
87
+ processTable: ProcessTable;
88
+ portRegistry: PortRegistry;
89
+ processLogs: ProcessLogStore;
90
+ /** W1: idempotency flag for the alarm-driven log-janitor bootstrap.
91
+ * Replaces the pre-W1 `processLogsTimer` setTimeout handle (which
92
+ * prevented hibernation per CF DO docs). The alarm itself lives in
93
+ * DO storage at key `w1_next_alarm_reasons`. */
94
+ processLogsJanitorWired: boolean;
95
+ /**
96
+ * Result of `configureWsHibernation` at constructor time. Exposed via
97
+ * `/api/_diag/memory` under `hib.autoResponseConfigured`,
98
+ * `hib.timeoutSetMs` etc. `null` until the constructor's wiring runs
99
+ * (which it does unconditionally — left null only on a defensive
100
+ * catch-all).
101
+ */
102
+ _w9WsConfig: WsHibernationConfigResult | null;
103
+ /**
104
+ * Monotonic isolate generation counter. Each fresh isolate (cold start
105
+ * or post-hibernation wake) increments this and persists to storage.
106
+ * Lets `/api/_diag/memory` confirm whether a wake actually happened
107
+ * between two probe calls.
108
+ */
109
+ _w9IsolateGen: number;
110
+ /** True once we've persisted the bumped gen counter to storage. */
111
+ _w9IsolateGenPersisted: boolean;
112
+ /** SQL DDL — idempotent; run on first fetch. */
113
+ _w9SchemaInit: boolean;
114
+ /** Have we wired the persist adapter into ProcessLogStore yet? */
115
+ _w9PersistWired: boolean;
116
+ /**
117
+ * Debounced flush state. Append marks the timer; the timer fires
118
+ * after W9_FLUSH_DEBOUNCE_MS and calls `processLogs.flush()`. We
119
+ * also flush eagerly when `dirtyChunks * pidCount` crosses a threshold
120
+ * — but the debounce handles the steady-state case.
121
+ *
122
+ * S5: storage keys + the debounce constant moved to ./nimbus-session-keys.ts.
123
+ */
124
+ _w9FlushTimer: any;
125
+ /**
126
+ * Peak supervisor heap (rss + heapUsed) seen since process start. Updated
127
+ * by `_diagSampleMemory()` on every call to `/api/_diag/memory`. Used to
128
+ * confirm OOM hypotheses without re-running the failure: a peak that
129
+ * grew toward 128 MB during pre-bundle is direct evidence the supervisor
130
+ * isolate is the one being killed. Survives the lifetime of THIS isolate
131
+ * only — a DO reboot resets it to 0, which is itself a useful signal
132
+ * (peak == 0 immediately after the banner re-printed = the killed
133
+ * isolate took its peak with it).
134
+ */
135
+ _diagPeakRss: number;
136
+ _diagPeakHeapUsed: number;
137
+ _diagPeakAt: number;
138
+ _diagSampleCount: number;
139
+ /**
140
+ * Fix 5: toggled by env NIMBUS_DEBUG=1 (checked each call; cheap enough).
141
+ * When true: spawn banners and exit traces are unconditional (not just
142
+ * long-running facets), RPC envelope errors are surfaced to the terminal
143
+ * with a [rpc-error] prefix, and the exit trace includes duration_ms.
144
+ *
145
+ * The flag is derived from `this.env.NIMBUS_DEBUG` — the binding comes
146
+ * from wrangler's var declaration or a test harness.
147
+ */
148
+ get nimbusDebug(): boolean;
149
+ /**
150
+ * Result of `tryEnableReplicas(this.ctx)` at constructor time. Surfaced
151
+ * via `/api/_diag/memory.replica` so operators can confirm whether the
152
+ * runtime accepted the SPEC API. Stays `null` if the constructor's
153
+ * call ran before this assignment (defensive — should never happen).
154
+ */
155
+ _w12EnableResult: _W12EnableResult | null;
156
+ /**
157
+ * Public URL prefix this DO is mounted at (e.g. `/s/nimble-otter-4271`).
158
+ * Set from the `X-Nimbus-Base` request header on the first forwarded
159
+ * request and persisted so it survives hibernation. Empty string means
160
+ * "unknown" (e.g. direct DO stub call from legacy callers) — in that
161
+ * case ViteDevServer falls back to the bare `/preview` default.
162
+ *
163
+ * NOTE: this is the SESSION prefix, not the vite preview prefix. The
164
+ * full vite basePath is `sessionBasePath + '/preview'`.
165
+ */
166
+ sessionBasePath: string;
167
+ /** Have we attempted to hydrate sessionBasePath from storage yet? */
168
+ sessionBasePathHydrated: boolean;
169
+ /**
170
+ * Has the "wrangler is aliased to nimbus-wrangler" banner been shown
171
+ * this session? Reset on WebSocket close/reopen so a reconnecting user
172
+ * sees it once per terminal attach. Purely cosmetic; no persistence.
173
+ */
174
+ wranglerAliasBannerShown: boolean;
175
+ constructor(ctx: DurableObjectState, env: any);
176
+ _w9WireProcessLogPersist(): void;
177
+ _w9EnsureSchema(): void;
178
+ _w9ScheduleFlush(): void;
179
+ /**
180
+ * W1: multi-reason alarm handler. Routes via a `w1_next_alarm_reasons`
181
+ * storage map managed by `scheduleAlarm` (see ./hibernation.ts).
182
+ * Dispatches every pending reason whose deadline has passed, then
183
+ * re-arms `ctx.storage.setAlarm` at the earliest remaining deadline.
184
+ * Today's reasons: 'w9-flush' (process-log SQL drain) and
185
+ * 'log-janitor' (dropOlderThan sweep). The janitor body needs an
186
+ * orphan-pid predicate so we close over `processTable` here.
187
+ */
188
+ alarm(): Promise<void>;
189
+ /** W9: increment + persist isolate-gen counter once per fresh isolate. */
190
+ _w9MaybeBumpIsolateGen(): Promise<void>;
191
+ /**
192
+ * Convenience: the full URL prefix for the Vite dev server inside this
193
+ * session (e.g. `/s/nimble-otter-4271/preview`). Falls back to the
194
+ * historical default when sessionBasePath is unknown so legacy callers
195
+ * and unit tests keep working.
196
+ */
197
+ get viteBasePath(): string;
198
+ /**
199
+ * Lazily hydrate sessionBasePath from storage, then overwrite with the
200
+ * current request's `X-Nimbus-Base` header if present. Call at the top
201
+ * of `_handleFetch` before any HTML rendering or ViteDevServer spawn.
202
+ *
203
+ * We always trust the most recent header over storage, because a DO
204
+ * instance is always pinned to one session ID (via idFromName) but the
205
+ * URL prefix COULD change across deploys (e.g. if we ever rename `/s/`).
206
+ */
207
+ hydrateSessionBasePath(request: Request): Promise<void>;
208
+ _rpcReadFile(path: string): Promise<string | null>;
209
+ _rpcReadFileBytes(path: string): Promise<Uint8Array | null>;
210
+ _rpcInnerDoFetch(req: any): Promise<any>;
211
+ _rpcWriteFile(path: string, content: string | Uint8Array): Promise<void>;
212
+ _rpcStat(path: string): Promise<any>;
213
+ _rpcReaddir(path: string): Promise<{
214
+ name: string;
215
+ type: string;
216
+ }[]>;
217
+ _rpcExists(path: string): Promise<boolean>;
218
+ _rpcMkdir(path: string): Promise<void>;
219
+ _rpcHmrRelay(clientId: string | null, msg: string): Promise<void>;
220
+ _rpcUnlink(path: string): Promise<void>;
221
+ _rpcWriteBatch(payload: any): Promise<{
222
+ inodes: number;
223
+ chunks: number;
224
+ }>;
225
+ _rpcWriteBatchStream(stream: ReadableStream<Uint8Array>): Promise<{
226
+ inodes: number;
227
+ chunks: number;
228
+ }>;
229
+ _rpcPutRegistryEntries(entries: any[]): Promise<{
230
+ written: number;
231
+ failed: number;
232
+ }>;
233
+ _rpcRecordCacheStats(events: any[]): Promise<void>;
234
+ _rpcStdout(pid: number, data: string): Promise<void>;
235
+ _rpcStderr(pid: number, data: string): Promise<void>;
236
+ _rpcReportExit(pid: number, code: number, tail: string): Promise<void>;
237
+ _emitExitDump(pid: number, code: number): void;
238
+ _emitShellExecDone(pid: number, cmd: string, code: number, durationMs: number): void;
239
+ _reportExternalExit(pid: number, code: number, reason: string): void;
240
+ _ensureLogJanitor(): void;
241
+ _rpcPrefetch(cwd: string, entryCode: string): Promise<Record<string, string>>;
242
+ _rpcRegisterPort(pid: number, port: number): Promise<void>;
243
+ _rpcUnregisterPort(port: number): Promise<void>;
244
+ _rpcTransform(code: string, loader: string): Promise<{
245
+ code: string;
246
+ map: string;
247
+ } | null>;
248
+ _rpcFanoutExecute(fnSource: string, args: unknown[], poolOpts?: {
249
+ tag?: string;
250
+ timeoutMs?: number;
251
+ preamble?: string;
252
+ wasmModules?: Record<string, ArrayBuffer>;
253
+ extraBindings?: Record<string, unknown>;
254
+ omitSupervisor?: boolean;
255
+ }): Promise<{
256
+ results: unknown[];
257
+ }>;
258
+ _rpcCpSpawn(req: any): Promise<{
259
+ childPid: number;
260
+ }>;
261
+ _rpcCpStdinWrite(childPid: number, data: string): Promise<{
262
+ ok: boolean;
263
+ }>;
264
+ _rpcCpStdinEnd(childPid: number): Promise<void>;
265
+ _rpcCpReadOutput(childPid: number, fd: 1 | 2, sinceSeq: number, waitMs: number): Promise<any>;
266
+ _rpcCpDrainOutput(childPid: number): Promise<any>;
267
+ _rpcCpKill(childPid: number, signal: string): Promise<boolean>;
268
+ _rpcCpWait(childPid: number, waitMs: number): Promise<any>;
269
+ _rpcCpDispatchInline(req: any, kind: string): Promise<{
270
+ exitCode: number;
271
+ stdout: string;
272
+ stderr: string;
273
+ }>;
274
+ _rpcReady(options?: _programmatic.ProgrammaticReadyOptions): Promise<{
275
+ ok: true;
276
+ preinstalled: string[];
277
+ }>;
278
+ _rpcExec(command: string, options?: _programmatic.ProgrammaticExecOptions): Promise<_programmatic.ProgrammaticExecResult>;
279
+ _rpcStartProcess(command: string, options?: _programmatic.ProgrammaticExecOptions): Promise<_programmatic.ProgrammaticStartResult>;
280
+ _rpcRunCode(code: string, options?: _programmatic.ProgrammaticExecOptions & {
281
+ language?: 'javascript' | 'typescript' | 'python' | 'ruby' | 'shell';
282
+ install?: 'never' | 'ifMissing';
283
+ }): Promise<_programmatic.ProgrammaticExecResult>;
284
+ _rpcInstallRuntime(spec: string, options?: {
285
+ force?: boolean;
286
+ }): Promise<import("../runtime/package-manager.js").RuntimeInstallSummary>;
287
+ _rpcEnsureRuntimes(specs: string[], options?: {
288
+ force?: boolean;
289
+ }): Promise<import("../runtime/package-manager.js").RuntimeInstallSummary[]>;
290
+ _rpcListRuntimes(): Promise<{
291
+ installed: import("../runtime/package-manager.js").RuntimeSummary[];
292
+ available: {
293
+ name: string;
294
+ defaultVersion: string;
295
+ versions: Array<{
296
+ version: string;
297
+ sizeBytes: number;
298
+ license: string;
299
+ }>;
300
+ }[];
301
+ }>;
302
+ _rpcListProcesses(): Promise<_programmatic.SerializedProcess[]>;
303
+ _rpcKillProcess(pid: number): Promise<{
304
+ ok: boolean;
305
+ pid: number;
306
+ }>;
307
+ _rpcProcessLogs(pid: number, options?: {
308
+ lines?: number;
309
+ bytes?: number;
310
+ }): Promise<{
311
+ pid: number;
312
+ chunks: any;
313
+ text: any;
314
+ exit: any;
315
+ }>;
316
+ _rpcListPorts(): Promise<_programmatic.SerializedPort[]>;
317
+ _rpcExposePort(port: number): Promise<{
318
+ port: number;
319
+ listening: boolean;
320
+ pid: any;
321
+ registeredAt: any;
322
+ }>;
323
+ _rpcUnexposePort(port: number): Promise<{
324
+ port: number;
325
+ ok: any;
326
+ }>;
327
+ _rpcDeleteFile(path: string, options?: {
328
+ recursive?: boolean;
329
+ }): Promise<void>;
330
+ vfsReadFile(path: string): ArrayBuffer | null;
331
+ vfsReadFileString(path: string): string | null;
332
+ vfsStat(path: string): {
333
+ type: string;
334
+ size: number;
335
+ mtime: number;
336
+ mode: number;
337
+ } | null;
338
+ vfsExists(path: string): boolean;
339
+ vfsReaddir(path: string): {
340
+ name: string;
341
+ type: string;
342
+ }[];
343
+ vfsWriteFile(path: string, data: ArrayBuffer): void;
344
+ fetch(request: Request): Promise<Response>;
345
+ _handleFetch(request: Request): Promise<Response>;
346
+ /**
347
+ * Read process.memoryUsage() if nodejs_compat exposes it. Returns null
348
+ * on environments where the binding is absent (older compat dates,
349
+ * non-Workers test harnesses). Never throws — heap probes must be
350
+ * fault-tolerant so a probe that fails in prod doesn't take the
351
+ * request handler down with it.
352
+ */
353
+ getReplicaState(): {
354
+ state: string;
355
+ error: string | null;
356
+ isReplica: boolean;
357
+ bookmark: string | null;
358
+ suspended: boolean;
359
+ };
360
+ _diagReadNodeMem(): {
361
+ rss: number;
362
+ heapTotal: number;
363
+ heapUsed: number;
364
+ external: number;
365
+ arrayBuffers: number;
366
+ } | null;
367
+ _diagReadPerfMem(): {
368
+ jsHeapSizeLimit: number;
369
+ totalJSHeapSize: number;
370
+ usedJSHeapSize: number;
371
+ } | null;
372
+ _diagSampleMemory(): void;
373
+ ensureSqliteFs(): void;
374
+ /** Track when we last persisted to avoid redundant writes. */
375
+ _w5LastPersistAt: number;
376
+ /** Track ring size at last persist; skip write if unchanged. */
377
+ _w5LastPersistRingSize: number;
378
+ /** B'.4 — live initSession phase. Surfaced via
379
+ * /api/_diag/session.phase. null pre-first-init. */
380
+ _b4Phase: import('../observability/oom-discriminator.js').SessionState | null;
381
+ /** B'.5 — count of warm-rejoin /ws upgrades. Increments each
382
+ * time the join path is taken (Phase B skipped). 0 means no
383
+ * warm rejoins yet. Surfaced via /api/_diag/session.warmJoinCount. */
384
+ _b4WarmJoinCount: number;
385
+ _w5RehydrateRingFromStorage(): Promise<void>;
386
+ /** Snapshot + persist OOM ring. Delegator → ./nimbus-session-diag.ts (S10). */
387
+ _w5PersistRing(): Promise<void> | null;
388
+ ensureFacetManager(): void;
389
+ /**
390
+ * W8: lazily construct the FacetProcessManager when the first cp* RPC
391
+ * arrives. Wired with adapters that bridge the Nimbus shell command
392
+ * registry to the FacetProcessManager's CommandRegistryLike contract.
393
+ */
394
+ _ensureFacetProcessManager(): any;
395
+ /**
396
+ * Set the shell command registry for the W8 broker to dispatch
397
+ * resolved commands. Called from the shell-init path right after
398
+ * `registerUnixCommands(registry, sqliteFs)`.
399
+ */
400
+ _cpRegistry: any;
401
+ _setCpRegistry(r: any): void;
402
+ /**
403
+ * Get or create the singleton fetch proxy entrypoint.
404
+ * ONE dynamic worker is created via LOADER.load() and reused for ALL npm
405
+ * fetch calls across the lifetime of this DO instance. This prevents
406
+ * ephemeral port exhaustion from creating a new worker per fetch.
407
+ */
408
+ ensureFetchProxy(log?: (msg: string) => void): any | null;
409
+ /**
410
+ * Build a FetchFn that routes through the singleton proxy entrypoint.
411
+ * All concurrent fetches share ONE worker — no port exhaustion.
412
+ */
413
+ buildFetchFn(log?: (msg: string) => void): ((url: string, init?: RequestInit) => Promise<Response>) | undefined;
414
+ ensureNpmInstaller(onProgress?: (msg: string) => void): void;
415
+ /**
416
+ * Read an environment flag with default-on semantics. Mirrors the
417
+ * shouldUseFacetPool / shouldUseFacetResolver / shouldUseBatchFacet
418
+ * gates inside NpmInstaller — kept here as a private helper so the
419
+ * lazy-proxy decision uses identical semantics without leaking that
420
+ * private API across modules.
421
+ */
422
+ _envFlagDefaultOn(name: string): boolean;
423
+ initSession(ws: WebSocket): void;
424
+ seedFilesystem(): void;
425
+ webSocketMessage(ws: WebSocket, message: string | ArrayBuffer): Promise<void>;
426
+ webSocketClose(ws: WebSocket, code?: number, reason?: string, wasClean?: boolean): Promise<void>;
427
+ webSocketError(ws: WebSocket, error?: any): Promise<void>;
428
+ /** W9: synchronous flush on close. Delegator → ./nimbus-session-hib.ts (S4). */
429
+ _w9FlushOnClose(): void;
430
+ /** W5: bridge _w5PersistRing → ctx.waitUntil. Delegator → ./nimbus-session-ws.ts (S7). */
431
+ _w5SafePersistRing(): void;
432
+ }
433
+ export { NimbusAssetsRPC, NimbusLoaderRPC, NimbusLoadedWorker, NimbusLoadedEntrypoint, NimbusDurableObjectNamespace, NimbusDOStub, } from './bindings.js';
434
+ //# sourceMappingURL=nimbus-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nimbus-session.d.ts","sourceRoot":"","sources":["../../src/session/nimbus-session.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,MAAM,EACN,KAAK,EACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAI7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAoCnD,OAAO,EAEL,KAAK,uBAAuB,IAAI,gBAAgB,EACjD,MAAM,uBAAuB,CAAC;AAmC/B,OAAO,KAAK,aAAa,MAAM,mBAAmB,CAAC;AA8BnD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,cAAc,CAAC;AAMtB,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAE9E;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAwBxD;AAGD,qBAAa,aAAc,SAAQ,uBAAuB;IAExD,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAQ;IAClC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC7B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAQ;IAC3B,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAC1C,YAAY,EAAE,YAAY,GAAG,IAAI,CAAQ;IACzC,oFAAoF;IACpF,mBAAmB,EAAE,GAAG,CAAQ;IAChC,cAAc,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC7C,aAAa,EAAE,aAAa,GAAG,IAAI,CAAQ;IAC3C;;;;;OAKG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpC;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,GAAG,IAAI,CAAQ;IACrC;;;;;OAKG;IACH,mBAAmB,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,IAAI,CAAQ;IAC1D;;;;sCAIkC;IAClC,YAAY,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IACpE,cAAc,EAAE,cAAc,GAAG,IAAI,CAAQ;IAC7C,YAAY,EAAE,YAAY,GAAG,IAAI,CAAQ;IACzC,mFAAmF;IACnF,oBAAoB,EAAE,GAAG,CAAQ;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAG3B,WAAW,EAAE,eAAe,CAAyB;IACrD;;;qDAGiD;IACjD,uBAAuB,EAAE,OAAO,CAAS;IAGzC;;;;;;OAMG;IAIH,WAAW,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IACrD;;;;;OAKG;IACH,aAAa,SAAK;IAClB,mEAAmE;IACnE,sBAAsB,UAAS;IAC/B,gDAAgD;IAChD,aAAa,UAAS;IACtB,kEAAkE;IAClE,eAAe,UAAS;IACxB;;;;;;;OAOG;IACH,aAAa,EAAE,GAAG,CAAQ;IAG1B;;;;;;;;;OASG;IACH,YAAY,EAAE,MAAM,CAAK;IACzB,iBAAiB,EAAE,MAAM,CAAK;IAC9B,WAAW,EAAE,MAAM,CAAK;IACxB,gBAAgB,EAAE,MAAM,CAAK;IAE7B;;;;;;;;OAQG;IACH,IAAI,WAAW,IAAI,OAAO,CAKzB;IAGD;;;;;OAKG;IAIH,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAEjD;;;;;;;;;OASG;IACH,eAAe,EAAE,MAAM,CAAM;IAC7B,qEAAqE;IACrE,uBAAuB,UAAS;IAChC;;;;OAIG;IACH,wBAAwB,UAAS;gBAErB,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG;IAqE7C,wBAAwB,IAAI,IAAI;IAIhC,eAAe,IAAI,IAAI;IAIvB,gBAAgB,IAAI,IAAI;IAIxB;;;;;;;;OAQG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B,0EAA0E;IACpE,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7C;;;;;OAKG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;;;;;;OAQG;IACG,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBvD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAClD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAC3D,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACxC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IACxE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IACpC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpE,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC1C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACtC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACjE,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACvC,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,oBAAoB,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACrG,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACpF,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAClD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACpD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACpD,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAG5E,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAC9C,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IACpF,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IACpE,iBAAiB,IAAI,IAAI;IAGnB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7E,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1D,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/C,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAG1F,iBAAiB,CACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EAAE,EACf,QAAQ,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC1C,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,GACA,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAK5B,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1E,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAC9E,iBAAiB,CAAC,QAAQ,EAAE,MAAM;IAClC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9D,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAE3C,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM;;;;;IAG3C,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,wBAAwB;;;;IAC1D,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,uBAAuB;IACzE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,uBAAuB;IACjF,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,uBAAuB,GAAG;QAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,CAAA;KAAE;IAGrL,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAC9D,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IACjE,gBAAgB;;;;;;;;;;;;IAChB,iBAAiB;IACjB,eAAe,CAAC,GAAG,EAAE,MAAM;;;;IAC3B,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;IACzE,aAAa;IACb,cAAc,CAAC,IAAI,EAAE,MAAM;;;;;;IAC3B,gBAAgB,CAAC,IAAI,EAAE,MAAM;;;;IAC7B,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE;IAGpE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAC7C,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAC9C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IACzF,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAChC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE;IAC1D,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IAK7C,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAa1C,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKvD;;;;;;OAMG;IAMH,eAAe,IAAI;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,SAAS,EAAE,OAAO,CAAC;KACpB;IAQD,gBAAgB,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIvH,gBAAgB,IAAI;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIvG,iBAAiB,IAAI,IAAI;IAIzB,cAAc;IAoDd,8DAA8D;IAC9D,gBAAgB,EAAE,MAAM,CAAK;IAC7B,gEAAgE;IAChE,sBAAsB,EAAE,MAAM,CAAM;IAEpC;yDACqD;IACrD,QAAQ,EAAE,OAAO,uCAAuC,EAAE,YAAY,GAAG,IAAI,CAAQ;IAErF;;2EAEuE;IACvE,gBAAgB,EAAE,MAAM,CAAK;IAEvB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlD,+EAA+E;IAC/E,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAItC,kBAAkB;IAsClB;;;;OAIG;IACH,0BAA0B;IAkJ1B;;;;OAIG;IACH,WAAW,EAAE,GAAG,CAAQ;IACxB,cAAc,CAAC,CAAC,EAAE,GAAG;IAErB;;;;;OAKG;IACH,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,GAAG,GAAG,IAAI;IAgFzD;;;OAGG;IACH,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS;IAoB/G,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IA4CrD;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAgBxC,WAAW,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI;IAUhC,cAAc;IA6GR,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7E,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhG,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D,gFAAgF;IAChF,eAAe,IAAI,IAAI;IAIvB,0FAA0F;IAC1F,kBAAkB,IAAI,IAAI;CAG3B;AAMD,OAAO,EACL,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,YAAY,GACb,MAAM,eAAe,CAAC"}