@statewalker/cellb 0.0.0-stage → 0.1.1

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 (365) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +323 -2
  3. package/dist/adapters/files-backup.d.ts +16 -0
  4. package/dist/adapters/files-backup.js +32 -0
  5. package/dist/adapters/files-backup.js.map +1 -0
  6. package/dist/adapters/files-changelog.d.ts +33 -0
  7. package/dist/adapters/files-changelog.js +96 -0
  8. package/dist/adapters/files-changelog.js.map +1 -0
  9. package/dist/adapters/files-ltx.d.ts +35 -0
  10. package/dist/adapters/files-ltx.js +9 -0
  11. package/dist/adapters/files-ltx.js.map +1 -0
  12. package/dist/adapters/ltx-vfs.d.ts +21 -0
  13. package/dist/adapters/ltx-vfs.js +286 -0
  14. package/dist/adapters/ltx-vfs.js.map +1 -0
  15. package/dist/adapters/node-sqlite.d.ts +45 -0
  16. package/dist/adapters/node-sqlite.js +254 -0
  17. package/dist/adapters/node-sqlite.js.map +1 -0
  18. package/dist/adapters/wasm-page-hook.d.ts +26 -0
  19. package/dist/adapters/wasm-page-hook.js +55 -0
  20. package/dist/adapters/wasm-page-hook.js.map +1 -0
  21. package/dist/adapters/wasm-session.d.ts +11 -0
  22. package/dist/adapters/wasm-session.js +76 -0
  23. package/dist/adapters/wasm-session.js.map +1 -0
  24. package/dist/adapters/wasm-sqlite.d.ts +89 -0
  25. package/dist/adapters/wasm-sqlite.js +258 -0
  26. package/dist/adapters/wasm-sqlite.js.map +1 -0
  27. package/dist/bindings/assets.d.ts +26 -0
  28. package/dist/bindings/assets.js +260 -0
  29. package/dist/bindings/assets.js.map +1 -0
  30. package/dist/bindings/cache.d.ts +16 -0
  31. package/dist/bindings/cache.js +34 -0
  32. package/dist/bindings/cache.js.map +1 -0
  33. package/dist/bindings/celld-kv.d.ts +26 -0
  34. package/dist/bindings/celld-kv.js +81 -0
  35. package/dist/bindings/celld-kv.js.map +1 -0
  36. package/dist/bindings/celld-queues.d.ts +56 -0
  37. package/dist/bindings/celld-queues.js +223 -0
  38. package/dist/bindings/celld-queues.js.map +1 -0
  39. package/dist/bindings/celld-workflows.d.ts +22 -0
  40. package/dist/bindings/celld-workflows.js +54 -0
  41. package/dist/bindings/celld-workflows.js.map +1 -0
  42. package/dist/bindings/cron.d.ts +27 -0
  43. package/dist/bindings/cron.js +232 -0
  44. package/dist/bindings/cron.js.map +1 -0
  45. package/dist/bindings/d1-migrations.d.ts +22 -0
  46. package/dist/bindings/d1-migrations.js +32 -0
  47. package/dist/bindings/d1-migrations.js.map +1 -0
  48. package/dist/bindings/html-rewriter.d.ts +8 -0
  49. package/dist/bindings/html-rewriter.js +75 -0
  50. package/dist/bindings/html-rewriter.js.map +1 -0
  51. package/dist/bindings/r2-celld.d.ts +3 -0
  52. package/dist/bindings/r2-celld.js +113 -0
  53. package/dist/bindings/r2-celld.js.map +1 -0
  54. package/dist/bindings/r2.d.ts +236 -0
  55. package/dist/bindings/r2.js +419 -0
  56. package/dist/bindings/r2.js.map +1 -0
  57. package/dist/bindings/worker-loader.d.ts +83 -0
  58. package/dist/bindings/worker-loader.js +183 -0
  59. package/dist/bindings/worker-loader.js.map +1 -0
  60. package/dist/bindings/workers-ai.d.ts +39 -0
  61. package/dist/bindings/workers-ai.js +175 -0
  62. package/dist/bindings/workers-ai.js.map +1 -0
  63. package/dist/browser.d.ts +7 -0
  64. package/dist/browser.js +8 -0
  65. package/dist/browser.js.map +1 -0
  66. package/dist/bucket/celld-cells.d.ts +86 -0
  67. package/dist/bucket/celld-cells.js +273 -0
  68. package/dist/bucket/celld-cells.js.map +1 -0
  69. package/dist/bucket/celld-format.d.ts +10 -0
  70. package/dist/bucket/celld-format.js +27 -0
  71. package/dist/bucket/celld-format.js.map +1 -0
  72. package/dist/bucket/idb-object-store.d.ts +9 -0
  73. package/dist/bucket/idb-object-store.js +73 -0
  74. package/dist/bucket/idb-object-store.js.map +1 -0
  75. package/dist/bucket/ltx-log.d.ts +34 -0
  76. package/dist/bucket/ltx-log.js +289 -0
  77. package/dist/bucket/ltx-log.js.map +1 -0
  78. package/dist/bucket/object-store.d.ts +51 -0
  79. package/dist/bucket/object-store.js +114 -0
  80. package/dist/bucket/object-store.js.map +1 -0
  81. package/dist/bucket/s3-object-store.d.ts +25 -0
  82. package/dist/bucket/s3-object-store.js +151 -0
  83. package/dist/bucket/s3-object-store.js.map +1 -0
  84. package/dist/bucket/sqlite-object-store.d.ts +10 -0
  85. package/dist/bucket/sqlite-object-store.js +107 -0
  86. package/dist/bucket/sqlite-object-store.js.map +1 -0
  87. package/dist/core/alarms.d.ts +27 -0
  88. package/dist/core/alarms.js +88 -0
  89. package/dist/core/alarms.js.map +1 -0
  90. package/dist/core/async-context.d.ts +34 -0
  91. package/dist/core/async-context.js +50 -0
  92. package/dist/core/async-context.js.map +1 -0
  93. package/dist/core/celld-schema.d.ts +14 -0
  94. package/dist/core/celld-schema.js +34 -0
  95. package/dist/core/celld-schema.js.map +1 -0
  96. package/dist/core/durable-object.d.ts +28 -0
  97. package/dist/core/durable-object.js +31 -0
  98. package/dist/core/durable-object.js.map +1 -0
  99. package/dist/core/gates.d.ts +33 -0
  100. package/dist/core/gates.js +89 -0
  101. package/dist/core/gates.js.map +1 -0
  102. package/dist/core/handles.d.ts +90 -0
  103. package/dist/core/handles.js +224 -0
  104. package/dist/core/handles.js.map +1 -0
  105. package/dist/core/id.d.ts +19 -0
  106. package/dist/core/id.js +64 -0
  107. package/dist/core/id.js.map +1 -0
  108. package/dist/core/namespace.d.ts +38 -0
  109. package/dist/core/namespace.js +141 -0
  110. package/dist/core/namespace.js.map +1 -0
  111. package/dist/core/object-host.d.ts +91 -0
  112. package/dist/core/object-host.js +616 -0
  113. package/dist/core/object-host.js.map +1 -0
  114. package/dist/core/request-body.d.ts +9 -0
  115. package/dist/core/request-body.js +55 -0
  116. package/dist/core/request-body.js.map +1 -0
  117. package/dist/core/runtime.d.ts +121 -0
  118. package/dist/core/runtime.js +366 -0
  119. package/dist/core/runtime.js.map +1 -0
  120. package/dist/core/shard.d.ts +7 -0
  121. package/dist/core/shard.js +10 -0
  122. package/dist/core/shard.js.map +1 -0
  123. package/dist/core/sql-split.d.ts +15 -0
  124. package/dist/core/sql-split.js +101 -0
  125. package/dist/core/sql-split.js.map +1 -0
  126. package/dist/core/sql-storage.d.ts +53 -0
  127. package/dist/core/sql-storage.js +407 -0
  128. package/dist/core/sql-storage.js.map +1 -0
  129. package/dist/core/state.d.ts +44 -0
  130. package/dist/core/state.js +93 -0
  131. package/dist/core/state.js.map +1 -0
  132. package/dist/core/storage.d.ts +103 -0
  133. package/dist/core/storage.js +351 -0
  134. package/dist/core/storage.js.map +1 -0
  135. package/dist/core/worker-rejections.d.ts +21 -0
  136. package/dist/core/worker-rejections.js +55 -0
  137. package/dist/core/worker-rejections.js.map +1 -0
  138. package/dist/index.d.ts +22 -0
  139. package/dist/index.js +23 -0
  140. package/dist/index.js.map +1 -0
  141. package/dist/isolate/browser.d.ts +16 -0
  142. package/dist/isolate/browser.js +37 -0
  143. package/dist/isolate/browser.js.map +1 -0
  144. package/dist/isolate/host.d.ts +24 -0
  145. package/dist/isolate/host.js +74 -0
  146. package/dist/isolate/host.js.map +1 -0
  147. package/dist/isolate/isolate-worker.d.ts +1 -0
  148. package/dist/isolate/isolate-worker.js +53 -0
  149. package/dist/isolate/isolate-worker.js.map +1 -0
  150. package/dist/isolate/isolate.d.ts +10 -0
  151. package/dist/isolate/isolate.js +169 -0
  152. package/dist/isolate/isolate.js.map +1 -0
  153. package/dist/isolate/node-entry.d.ts +1 -0
  154. package/dist/isolate/node-entry.js +12 -0
  155. package/dist/isolate/node-entry.js.map +1 -0
  156. package/dist/isolate/protocol.d.ts +66 -0
  157. package/dist/isolate/protocol.js +205 -0
  158. package/dist/isolate/protocol.js.map +1 -0
  159. package/dist/ltx/crc64.d.ts +6 -0
  160. package/dist/ltx/crc64.js +46 -0
  161. package/dist/ltx/crc64.js.map +1 -0
  162. package/dist/ltx/ltx-page-server.d.ts +65 -0
  163. package/dist/ltx/ltx-page-server.js +309 -0
  164. package/dist/ltx/ltx-page-server.js.map +1 -0
  165. package/dist/ltx/ltx-pages.d.ts +81 -0
  166. package/dist/ltx/ltx-pages.js +315 -0
  167. package/dist/ltx/ltx-pages.js.map +1 -0
  168. package/dist/ltx/ltx-store-worker.d.ts +1 -0
  169. package/dist/ltx/ltx-store-worker.js +38 -0
  170. package/dist/ltx/ltx-store-worker.js.map +1 -0
  171. package/dist/ltx/ltx.d.ts +45 -0
  172. package/dist/ltx/ltx.js +203 -0
  173. package/dist/ltx/ltx.js.map +1 -0
  174. package/dist/ltx/lz4.d.ts +9 -0
  175. package/dist/ltx/lz4.js +156 -0
  176. package/dist/ltx/lz4.js.map +1 -0
  177. package/dist/ltx/opfs-sync-files.d.ts +23 -0
  178. package/dist/ltx/opfs-sync-files.js +191 -0
  179. package/dist/ltx/opfs-sync-files.js.map +1 -0
  180. package/dist/ltx/xxh32.d.ts +1 -0
  181. package/dist/ltx/xxh32.js +43 -0
  182. package/dist/ltx/xxh32.js.map +1 -0
  183. package/dist/miniflare-compat/blob-service.d.ts +13 -0
  184. package/dist/miniflare-compat/blob-service.js +66 -0
  185. package/dist/miniflare-compat/blob-service.js.map +1 -0
  186. package/dist/miniflare-compat/kv-binding.d.ts +44 -0
  187. package/dist/miniflare-compat/kv-binding.js +99 -0
  188. package/dist/miniflare-compat/kv-binding.js.map +1 -0
  189. package/dist/miniflare-compat/shims/assert.d.ts +15 -0
  190. package/dist/miniflare-compat/shims/assert.js +24 -0
  191. package/dist/miniflare-compat/shims/assert.js.map +1 -0
  192. package/dist/miniflare-compat/shims/workerd-cloudflare.d.ts +7 -0
  193. package/dist/miniflare-compat/shims/workerd-cloudflare.js +6 -0
  194. package/dist/miniflare-compat/shims/workerd-cloudflare.js.map +1 -0
  195. package/dist/miniflare-compat/shims/workerd-globals.d.ts +1 -0
  196. package/dist/miniflare-compat/shims/workerd-globals.js +30 -0
  197. package/dist/miniflare-compat/shims/workerd-globals.js.map +1 -0
  198. package/dist/miniflare-compat/shims/workerd-internal.d.ts +20 -0
  199. package/dist/miniflare-compat/shims/workerd-internal.js +23 -0
  200. package/dist/miniflare-compat/shims/workerd-internal.js.map +1 -0
  201. package/dist/miniflare-compat/shims/workerd-performance.d.ts +4 -0
  202. package/dist/miniflare-compat/shims/workerd-performance.js +17 -0
  203. package/dist/miniflare-compat/shims/workerd-performance.js.map +1 -0
  204. package/dist/miniflare-compat/simulator-fetcher.d.ts +9 -0
  205. package/dist/miniflare-compat/simulator-fetcher.js +14 -0
  206. package/dist/miniflare-compat/simulator-fetcher.js.map +1 -0
  207. package/dist/miniflare-compat/vendored.d.ts +15 -0
  208. package/dist/miniflare-compat/vendored.js +27 -0
  209. package/dist/miniflare-compat/vendored.js.map +1 -0
  210. package/dist/node-compat/async_hooks.d.ts +22 -0
  211. package/dist/node-compat/async_hooks.js +176 -0
  212. package/dist/node-compat/async_hooks.js.map +1 -0
  213. package/dist/node-compat/browser-registry.d.ts +3 -0
  214. package/dist/node-compat/browser-registry.js +39 -0
  215. package/dist/node-compat/browser-registry.js.map +1 -0
  216. package/dist/node-compat/crypto.d.ts +60 -0
  217. package/dist/node-compat/crypto.js +143 -0
  218. package/dist/node-compat/crypto.js.map +1 -0
  219. package/dist/node-compat/diagnostics_channel.d.ts +27 -0
  220. package/dist/node-compat/diagnostics_channel.js +46 -0
  221. package/dist/node-compat/diagnostics_channel.js.map +1 -0
  222. package/dist/node-compat/fs.d.ts +35 -0
  223. package/dist/node-compat/fs.js +40 -0
  224. package/dist/node-compat/fs.js.map +1 -0
  225. package/dist/node-compat/globals.d.ts +3 -0
  226. package/dist/node-compat/globals.js +4 -0
  227. package/dist/node-compat/globals.js.map +1 -0
  228. package/dist/node-compat/install.d.ts +5 -0
  229. package/dist/node-compat/install.js +12 -0
  230. package/dist/node-compat/install.js.map +1 -0
  231. package/dist/node-compat/module.d.ts +12 -0
  232. package/dist/node-compat/module.js +36 -0
  233. package/dist/node-compat/module.js.map +1 -0
  234. package/dist/node-compat/modules.d.ts +8 -0
  235. package/dist/node-compat/modules.js +23 -0
  236. package/dist/node-compat/modules.js.map +1 -0
  237. package/dist/node-compat/os.d.ts +36 -0
  238. package/dist/node-compat/os.js +36 -0
  239. package/dist/node-compat/os.js.map +1 -0
  240. package/dist/node-compat/process.d.ts +14 -0
  241. package/dist/node-compat/process.js +16 -0
  242. package/dist/node-compat/process.js.map +1 -0
  243. package/dist/node-compat/shims.d.ts +4 -0
  244. package/dist/node.d.ts +5 -0
  245. package/dist/node.js +6 -0
  246. package/dist/node.js.map +1 -0
  247. package/dist/peer/celld-peer.d.ts +53 -0
  248. package/dist/peer/celld-peer.js +555 -0
  249. package/dist/peer/celld-peer.js.map +1 -0
  250. package/dist/ports.d.ts +183 -0
  251. package/dist/ports.js +10 -0
  252. package/dist/ports.js.map +1 -0
  253. package/dist/project/browser-bundle.d.ts +17 -0
  254. package/dist/project/browser-bundle.js +125 -0
  255. package/dist/project/browser-bundle.js.map +1 -0
  256. package/dist/project/browser-cookies.d.ts +12 -0
  257. package/dist/project/browser-cookies.js +90 -0
  258. package/dist/project/browser-cookies.js.map +1 -0
  259. package/dist/project/browser-host.d.ts +173 -0
  260. package/dist/project/browser-host.js +200 -0
  261. package/dist/project/browser-host.js.map +1 -0
  262. package/dist/project/browser-modules.d.ts +17 -0
  263. package/dist/project/browser-modules.js +89 -0
  264. package/dist/project/browser-modules.js.map +1 -0
  265. package/dist/project/browser-shards.d.ts +62 -0
  266. package/dist/project/browser-shards.js +210 -0
  267. package/dist/project/browser-shards.js.map +1 -0
  268. package/dist/project/browser-tabs.d.ts +103 -0
  269. package/dist/project/browser-tabs.js +418 -0
  270. package/dist/project/browser-tabs.js.map +1 -0
  271. package/dist/project/cloudflare-email.d.ts +8 -0
  272. package/dist/project/cloudflare-email.js +11 -0
  273. package/dist/project/cloudflare-email.js.map +1 -0
  274. package/dist/project/cloudflare-workers.d.ts +12 -0
  275. package/dist/project/cloudflare-workers.js +16 -0
  276. package/dist/project/cloudflare-workers.js.map +1 -0
  277. package/dist/project/host-modules.d.ts +4 -0
  278. package/dist/project/host-modules.js +40 -0
  279. package/dist/project/host-modules.js.map +1 -0
  280. package/dist/project/jsonc.d.ts +2 -0
  281. package/dist/project/jsonc.js +27 -0
  282. package/dist/project/jsonc.js.map +1 -0
  283. package/dist/project/lower-await.d.ts +2 -0
  284. package/dist/project/lower-await.js +151 -0
  285. package/dist/project/lower-await.js.map +1 -0
  286. package/dist/project/node-project.d.ts +38 -0
  287. package/dist/project/node-project.js +373 -0
  288. package/dist/project/node-project.js.map +1 -0
  289. package/dist/project/own-module.d.ts +6 -0
  290. package/dist/project/own-module.js +13 -0
  291. package/dist/project/own-module.js.map +1 -0
  292. package/dist/project/scheduler.d.ts +2 -0
  293. package/dist/project/scheduler.js +3 -0
  294. package/dist/project/scheduler.js.map +1 -0
  295. package/dist/project/site.d.ts +74 -0
  296. package/dist/project/site.js +206 -0
  297. package/dist/project/site.js.map +1 -0
  298. package/dist/project/virtual-modules.d.ts +3 -0
  299. package/dist/project/worker-scope.d.ts +27 -0
  300. package/dist/project/worker-scope.js +46 -0
  301. package/dist/project/worker-scope.js.map +1 -0
  302. package/dist/project/workerd-message-channel.d.ts +13 -0
  303. package/dist/project/workerd-message-channel.js +137 -0
  304. package/dist/project/workerd-message-channel.js.map +1 -0
  305. package/dist/project/workers-global-names.d.ts +6 -0
  306. package/dist/project/workers-global-names.js +15 -0
  307. package/dist/project/workers-global-names.js.map +1 -0
  308. package/dist/project/workers-globals-module.d.ts +8 -0
  309. package/dist/project/workers-globals-module.js +9 -0
  310. package/dist/project/workers-globals-module.js.map +1 -0
  311. package/dist/project/workers-globals.d.ts +9 -0
  312. package/dist/project/workers-globals.js +19 -0
  313. package/dist/project/workers-globals.js.map +1 -0
  314. package/dist/project/wrangler.d.ts +116 -0
  315. package/dist/project/wrangler.js +342 -0
  316. package/dist/project/wrangler.js.map +1 -0
  317. package/dist/router/cell-router.d.ts +72 -0
  318. package/dist/router/cell-router.js +247 -0
  319. package/dist/router/cell-router.js.map +1 -0
  320. package/dist/router/shard-worker.d.ts +44 -0
  321. package/dist/router/shard-worker.js +163 -0
  322. package/dist/router/shard-worker.js.map +1 -0
  323. package/dist/transport/cells-http.d.ts +25 -0
  324. package/dist/transport/cells-http.js +141 -0
  325. package/dist/transport/cells-http.js.map +1 -0
  326. package/dist/transport/cells-link.d.ts +27 -0
  327. package/dist/transport/cells-link.js +71 -0
  328. package/dist/transport/cells-link.js.map +1 -0
  329. package/dist/transport/port.d.ts +26 -0
  330. package/dist/transport/port.js +100 -0
  331. package/dist/transport/port.js.map +1 -0
  332. package/dist/v8/codec.d.ts +6 -0
  333. package/dist/v8/codec.js +9 -0
  334. package/dist/v8/codec.js.map +1 -0
  335. package/dist/v8/serialize.d.ts +10 -0
  336. package/dist/v8/serialize.js +601 -0
  337. package/dist/v8/serialize.js.map +1 -0
  338. package/dist/ws/client.d.ts +25 -0
  339. package/dist/ws/client.js +203 -0
  340. package/dist/ws/client.js.map +1 -0
  341. package/dist/ws/control.d.ts +48 -0
  342. package/dist/ws/control.js +44 -0
  343. package/dist/ws/control.js.map +1 -0
  344. package/dist/ws/frames.d.ts +38 -0
  345. package/dist/ws/frames.js +39 -0
  346. package/dist/ws/frames.js.map +1 -0
  347. package/dist/ws/server.d.ts +99 -0
  348. package/dist/ws/server.js +295 -0
  349. package/dist/ws/server.js.map +1 -0
  350. package/dist/ws/sw-connector.d.ts +10 -0
  351. package/dist/ws/sw-connector.js +25 -0
  352. package/dist/ws/sw-connector.js.map +1 -0
  353. package/dist/ws/upgrade.d.ts +28 -0
  354. package/dist/ws/upgrade.js +75 -0
  355. package/dist/ws/upgrade.js.map +1 -0
  356. package/package.json +111 -3
  357. package/vendor/celld/LICENSE +202 -0
  358. package/vendor/celld/kv.js +1131 -0
  359. package/vendor/celld/queues.js +1656 -0
  360. package/vendor/celld/workflows.js +1610 -0
  361. package/vendor/html-rewriter-wasm/html_rewriter.js +925 -0
  362. package/vendor/html-rewriter-wasm/html_rewriter_bg.wasm +0 -0
  363. package/vendor/miniflare/d1-api.js +738 -0
  364. package/vendor/miniflare/d1-database.js +6978 -0
  365. package/vendor/miniflare/kv-namespace.js +3061 -0
@@ -0,0 +1,35 @@
1
+ export declare const existsSync: (_path?: unknown) => boolean;
2
+ export declare const readFileSync: (path?: unknown) => never;
3
+ export declare const writeFileSync: (path?: unknown) => never;
4
+ export declare const statSync: (path?: unknown) => never;
5
+ export declare const lstatSync: (path?: unknown) => never;
6
+ export declare const readdirSync: (path?: unknown) => never;
7
+ export declare const mkdirSync: (path?: unknown) => never;
8
+ export declare const promises: {
9
+ readFile: (path?: unknown) => Promise<never>;
10
+ writeFile: (path?: unknown) => Promise<never>;
11
+ stat: (path?: unknown) => Promise<never>;
12
+ lstat: (path?: unknown) => Promise<never>;
13
+ readdir: (path?: unknown) => Promise<never>;
14
+ mkdir: (path?: unknown) => Promise<never>;
15
+ access: (path?: unknown) => Promise<never>;
16
+ };
17
+ declare const _default: {
18
+ existsSync: typeof existsSync;
19
+ readFileSync: (path?: unknown) => never;
20
+ writeFileSync: (path?: unknown) => never;
21
+ statSync: (path?: unknown) => never;
22
+ lstatSync: (path?: unknown) => never;
23
+ readdirSync: (path?: unknown) => never;
24
+ mkdirSync: (path?: unknown) => never;
25
+ promises: {
26
+ readFile: (path?: unknown) => Promise<never>;
27
+ writeFile: (path?: unknown) => Promise<never>;
28
+ stat: (path?: unknown) => Promise<never>;
29
+ lstat: (path?: unknown) => Promise<never>;
30
+ readdir: (path?: unknown) => Promise<never>;
31
+ mkdir: (path?: unknown) => Promise<never>;
32
+ access: (path?: unknown) => Promise<never>;
33
+ };
34
+ };
35
+ export default _default;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * `node:fs` for browsers (nodejs_compat): there is no file system, so every call fails with
3
+ * `ENOENT` (as for a missing file) and `existsSync` is false. Code that probes for optional
4
+ * files, such as an SDK reading `/proc/self/environ` inside a `try`, keeps working.
5
+ */
6
+ const missing = (op) => (path) => {
7
+ throw Object.assign(new Error(`ENOENT: no such file or directory, ${op} '${String(path)}'`), {
8
+ code: "ENOENT",
9
+ syscall: op,
10
+ path,
11
+ });
12
+ };
13
+ const missingAsync = (op) => async (path) => missing(op)(path);
14
+ export const existsSync = (_path) => false;
15
+ export const readFileSync = missing("open");
16
+ export const writeFileSync = missing("open");
17
+ export const statSync = missing("stat");
18
+ export const lstatSync = missing("lstat");
19
+ export const readdirSync = missing("scandir");
20
+ export const mkdirSync = missing("mkdir");
21
+ export const promises = {
22
+ readFile: missingAsync("open"),
23
+ writeFile: missingAsync("open"),
24
+ stat: missingAsync("stat"),
25
+ lstat: missingAsync("lstat"),
26
+ readdir: missingAsync("scandir"),
27
+ mkdir: missingAsync("mkdir"),
28
+ access: missingAsync("access"),
29
+ };
30
+ export default {
31
+ existsSync,
32
+ readFileSync,
33
+ writeFileSync,
34
+ statSync,
35
+ lstatSync,
36
+ readdirSync,
37
+ mkdirSync,
38
+ promises,
39
+ };
40
+ //# sourceMappingURL=fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/node-compat/fs.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,IAAc,EAAE,EAAE;IACjD,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sCAAsC,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC3F,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,IAAI;KACL,CAAC,CAAC;AACL,CAAC,CAAC;AACF,MAAM,YAAY,GAChB,CAAC,EAAU,EAAE,EAAE,CACf,KAAK,EAAE,IAAc,EAAkB,EAAE,CACvC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAe,EAAE,EAAE,CAAC,KAAK,CAAC;AACrD,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7C,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9B,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;IAC1B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;IAC5B,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;IAChC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;IAC5B,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC;CAC/B,CAAC;AAEF,eAAe;IACb,UAAU;IACV,YAAY;IACZ,aAAa;IACb,QAAQ;IACR,SAAS;IACT,WAAW;IACX,SAAS;IACT,QAAQ;CACT,CAAC","sourcesContent":["/**\n * `node:fs` for browsers (nodejs_compat): there is no file system, so every call fails with\n * `ENOENT` (as for a missing file) and `existsSync` is false. Code that probes for optional\n * files, such as an SDK reading `/proc/self/environ` inside a `try`, keeps working.\n */\nconst missing = (op: string) => (path?: unknown) => {\n throw Object.assign(new Error(`ENOENT: no such file or directory, ${op} '${String(path)}'`), {\n code: \"ENOENT\",\n syscall: op,\n path,\n });\n};\nconst missingAsync =\n (op: string) =>\n async (path?: unknown): Promise<never> =>\n missing(op)(path);\n\nexport const existsSync = (_path?: unknown) => false;\nexport const readFileSync = missing(\"open\");\nexport const writeFileSync = missing(\"open\");\nexport const statSync = missing(\"stat\");\nexport const lstatSync = missing(\"lstat\");\nexport const readdirSync = missing(\"scandir\");\nexport const mkdirSync = missing(\"mkdir\");\nexport const promises = {\n readFile: missingAsync(\"open\"),\n writeFile: missingAsync(\"open\"),\n stat: missingAsync(\"stat\"),\n lstat: missingAsync(\"lstat\"),\n readdir: missingAsync(\"scandir\"),\n mkdir: missingAsync(\"mkdir\"),\n access: missingAsync(\"access\"),\n};\n\nexport default {\n existsSync,\n readFileSync,\n writeFileSync,\n statSync,\n lstatSync,\n readdirSync,\n mkdirSync,\n promises,\n};\n"]}
@@ -0,0 +1,3 @@
1
+ /** Globals that nodejs_compat adds for user code in browsers (bundle-local). */
2
+ export { Buffer } from "buffer";
3
+ export { process } from "./process.js";
@@ -0,0 +1,4 @@
1
+ /** Globals that nodejs_compat adds for user code in browsers (bundle-local). */
2
+ export { Buffer } from "buffer";
3
+ export { process } from "./process.js";
4
+ //# sourceMappingURL=globals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.js","sourceRoot":"","sources":["../../src/node-compat/globals.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC","sourcesContent":["/** Globals that nodejs_compat adds for user code in browsers (bundle-local). */\nexport { Buffer } from \"buffer\";\nexport { process } from \"./process.js\";\n"]}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * nodejs_compat also exposes `Buffer` and `process` on `globalThis` (as workerd/celld do).
3
+ * Call in the realm that runs the Worker code (a browser worker), before importing it.
4
+ */
5
+ export declare function installNodeGlobals(): void;
@@ -0,0 +1,12 @@
1
+ import { Buffer } from "buffer";
2
+ import { process } from "./process.js";
3
+ /**
4
+ * nodejs_compat also exposes `Buffer` and `process` on `globalThis` (as workerd/celld do).
5
+ * Call in the realm that runs the Worker code (a browser worker), before importing it.
6
+ */
7
+ export function installNodeGlobals() {
8
+ const g = globalThis;
9
+ g.Buffer ??= Buffer;
10
+ g.process ??= process;
11
+ }
12
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/node-compat/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,CAAC,GAAG,UAAqC,CAAC;IAChD,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;IACpB,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;AACxB,CAAC","sourcesContent":["import { Buffer } from \"buffer\";\nimport { process } from \"./process.js\";\n\n/**\n * nodejs_compat also exposes `Buffer` and `process` on `globalThis` (as workerd/celld do).\n * Call in the realm that runs the Worker code (a browser worker), before importing it.\n */\nexport function installNodeGlobals(): void {\n const g = globalThis as Record<string, unknown>;\n g.Buffer ??= Buffer;\n g.process ??= process;\n}\n"]}
@@ -0,0 +1,12 @@
1
+ export declare const builtinModules: string[];
2
+ export declare function isBuiltin(id: string): boolean;
3
+ export declare function createRequire(_from: string | URL): ((id: string) => unknown) & {
4
+ resolve: (id: string) => string;
5
+ cache: any;
6
+ };
7
+ declare const _default: {
8
+ builtinModules: string[];
9
+ isBuiltin: typeof isBuiltin;
10
+ createRequire: typeof createRequire;
11
+ };
12
+ export default _default;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * `node:module` for browsers (nodejs_compat): `createRequire` as workerd has it. The `require`
3
+ * it returns loads the Node.js built-ins cellb polyfills (`require("crypto")`, bare or
4
+ * `node:`-prefixed) and throws for anything else. Bundlers emit `createRequire(import.meta.url)`
5
+ * at module scope for CommonJS dependencies that `require()` built-ins, so the call itself must
6
+ * not throw.
7
+ */
8
+ // The polyfills, as the browser host registers them (`__cellsNodeModules`, set before the
9
+ // Worker's code runs); not imported, as the registry includes this module.
10
+ const registry = () => globalThis.__cellsNodeModules ?? {};
11
+ const builtins = () => Object.keys(registry()).filter((k) => k.startsWith("node:"));
12
+ export const builtinModules = [];
13
+ export function isBuiltin(id) {
14
+ return builtins().includes(id.startsWith("node:") ? id : `node:${id}`);
15
+ }
16
+ export function createRequire(_from) {
17
+ const require = (id) => {
18
+ const name = id.startsWith("node:") ? id : `node:${id}`;
19
+ if (Object.hasOwn(registry(), name))
20
+ return registry()[name];
21
+ const err = new Error(`Cannot find module '${id}' (nodejs_compat in a browser)`);
22
+ err.code = "MODULE_NOT_FOUND";
23
+ throw err;
24
+ };
25
+ return Object.assign(require, {
26
+ resolve: (id) => {
27
+ if (isBuiltin(id))
28
+ return id.startsWith("node:") ? id : `node:${id}`;
29
+ require(id);
30
+ return id;
31
+ },
32
+ cache: Object.create(null),
33
+ });
34
+ }
35
+ export default { builtinModules, isBuiltin, createRequire };
36
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/node-compat/module.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,0FAA0F;AAC1F,2EAA2E;AAC3E,MAAM,QAAQ,GAAG,GAA4B,EAAE,CAC5C,UAA+D,CAAC,kBAAkB,IAAI,EAAE,CAAC;AAE5F,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AAEpF,MAAM,CAAC,MAAM,cAAc,GAAa,EAAE,CAAC;AAE3C,MAAM,UAAU,SAAS,CAAC,EAAU;IAClC,OAAO,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAmB;IAC/C,MAAM,OAAO,GAAG,CAAC,EAAU,EAAW,EAAE;QACtC,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;QACxD,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC;YAAE,OAAO,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,uBAAuB,EAAE,gCAAgC,CAAC,CAAC;QAChF,GAAiC,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC7D,MAAM,GAAG,CAAC;IACZ,CAAC,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;QAC5B,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE;YACtB,IAAI,SAAS,CAAC,EAAE,CAAC;gBAAE,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrE,OAAO,CAAC,EAAE,CAAC,CAAC;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC","sourcesContent":["/**\n * `node:module` for browsers (nodejs_compat): `createRequire` as workerd has it. The `require`\n * it returns loads the Node.js built-ins cellb polyfills (`require(\"crypto\")`, bare or\n * `node:`-prefixed) and throws for anything else. Bundlers emit `createRequire(import.meta.url)`\n * at module scope for CommonJS dependencies that `require()` built-ins, so the call itself must\n * not throw.\n */\n// The polyfills, as the browser host registers them (`__cellsNodeModules`, set before the\n// Worker's code runs); not imported, as the registry includes this module.\nconst registry = (): Record<string, unknown> =>\n (globalThis as { __cellsNodeModules?: Record<string, unknown> }).__cellsNodeModules ?? {};\n\nconst builtins = () => Object.keys(registry()).filter((k) => k.startsWith(\"node:\"));\n\nexport const builtinModules: string[] = [];\n\nexport function isBuiltin(id: string): boolean {\n return builtins().includes(id.startsWith(\"node:\") ? id : `node:${id}`);\n}\n\nexport function createRequire(_from: string | URL) {\n const require = (id: string): unknown => {\n const name = id.startsWith(\"node:\") ? id : `node:${id}`;\n if (Object.hasOwn(registry(), name)) return registry()[name];\n const err = new Error(`Cannot find module '${id}' (nodejs_compat in a browser)`);\n (err as Error & { code?: string }).code = \"MODULE_NOT_FOUND\";\n throw err;\n };\n return Object.assign(require, {\n resolve: (id: string) => {\n if (isBuiltin(id)) return id.startsWith(\"node:\") ? id : `node:${id}`;\n require(id);\n return id;\n },\n cache: Object.create(null),\n });\n}\n\nexport default { builtinModules, isBuiltin, createRequire };\n"]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * nodejs_compat in browsers: `node:*` specifiers → polyfill modules. Used by the browser
3
+ * bundler (esbuild aliases) and by the in-browser module server (host registry entries).
4
+ * On Node hosts `node:*` stays the real Node.js module.
5
+ */
6
+ export declare const NODE_POLYFILL_PACKAGES: Record<string, string>;
7
+ /** Implemented in this package (src/node-compat). */
8
+ export declare const NODE_POLYFILL_FILES: Record<string, string>;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * nodejs_compat in browsers: `node:*` specifiers → polyfill modules. Used by the browser
3
+ * bundler (esbuild aliases) and by the in-browser module server (host registry entries).
4
+ * On Node hosts `node:*` stays the real Node.js module.
5
+ */
6
+ export const NODE_POLYFILL_PACKAGES = {
7
+ "node:assert": "assert",
8
+ "node:buffer": "buffer",
9
+ "node:events": "events",
10
+ "node:path": "path-browserify",
11
+ "node:util": "util",
12
+ };
13
+ /** Implemented in this package (src/node-compat). */
14
+ export const NODE_POLYFILL_FILES = {
15
+ "node:crypto": "crypto.ts",
16
+ "node:async_hooks": "async_hooks.ts",
17
+ "node:process": "process.ts",
18
+ "node:diagnostics_channel": "diagnostics_channel.ts",
19
+ "node:os": "os.ts",
20
+ "node:fs": "fs.ts",
21
+ "node:module": "module.ts",
22
+ };
23
+ //# sourceMappingURL=modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/node-compat/modules.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA2B;IAC5D,aAAa,EAAE,QAAQ;IACvB,aAAa,EAAE,QAAQ;IACvB,aAAa,EAAE,QAAQ;IACvB,WAAW,EAAE,iBAAiB;IAC9B,WAAW,EAAE,MAAM;CACpB,CAAC;AACF,qDAAqD;AACrD,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,aAAa,EAAE,WAAW;IAC1B,kBAAkB,EAAE,gBAAgB;IACpC,cAAc,EAAE,YAAY;IAC5B,0BAA0B,EAAE,wBAAwB;IACpD,SAAS,EAAE,OAAO;IAClB,SAAS,EAAE,OAAO;IAClB,aAAa,EAAE,WAAW;CAC3B,CAAC","sourcesContent":["/**\n * nodejs_compat in browsers: `node:*` specifiers → polyfill modules. Used by the browser\n * bundler (esbuild aliases) and by the in-browser module server (host registry entries).\n * On Node hosts `node:*` stays the real Node.js module.\n */\nexport const NODE_POLYFILL_PACKAGES: Record<string, string> = {\n \"node:assert\": \"assert\",\n \"node:buffer\": \"buffer\",\n \"node:events\": \"events\",\n \"node:path\": \"path-browserify\",\n \"node:util\": \"util\",\n};\n/** Implemented in this package (src/node-compat). */\nexport const NODE_POLYFILL_FILES: Record<string, string> = {\n \"node:crypto\": \"crypto.ts\",\n \"node:async_hooks\": \"async_hooks.ts\",\n \"node:process\": \"process.ts\",\n \"node:diagnostics_channel\": \"diagnostics_channel.ts\",\n \"node:os\": \"os.ts\",\n \"node:fs\": \"fs.ts\",\n \"node:module\": \"module.ts\",\n};\n"]}
@@ -0,0 +1,36 @@
1
+ /** `node:os` for browsers (nodejs_compat): constants and harmless answers, no host facts. */
2
+ export declare const EOL = "\n";
3
+ export declare const devNull = "/dev/null";
4
+ export declare const platform: () => string;
5
+ export declare const type: () => string;
6
+ export declare const arch: () => string;
7
+ export declare const release: () => string;
8
+ export declare const hostname: () => string;
9
+ export declare const homedir: () => string;
10
+ export declare const tmpdir: () => string;
11
+ export declare const endianness: () => string;
12
+ export declare const cpus: () => never[];
13
+ export declare const totalmem: () => number;
14
+ export declare const freemem: () => number;
15
+ export declare const uptime: () => number;
16
+ export declare const loadavg: () => number[];
17
+ export declare const networkInterfaces: () => {};
18
+ declare const _default: {
19
+ EOL: string;
20
+ devNull: string;
21
+ platform: typeof platform;
22
+ type: typeof type;
23
+ arch: typeof arch;
24
+ release: typeof release;
25
+ hostname: typeof hostname;
26
+ homedir: typeof homedir;
27
+ tmpdir: typeof tmpdir;
28
+ endianness: typeof endianness;
29
+ cpus: typeof cpus;
30
+ totalmem: typeof totalmem;
31
+ freemem: typeof freemem;
32
+ uptime: typeof uptime;
33
+ loadavg: typeof loadavg;
34
+ networkInterfaces: typeof networkInterfaces;
35
+ };
36
+ export default _default;
@@ -0,0 +1,36 @@
1
+ /** `node:os` for browsers (nodejs_compat): constants and harmless answers, no host facts. */
2
+ export const EOL = "\n";
3
+ export const devNull = "/dev/null";
4
+ export const platform = () => "linux";
5
+ export const type = () => "Linux";
6
+ export const arch = () => "wasm";
7
+ export const release = () => "";
8
+ export const hostname = () => "localhost";
9
+ export const homedir = () => "/";
10
+ export const tmpdir = () => "/tmp";
11
+ export const endianness = () => "LE";
12
+ export const cpus = () => [];
13
+ export const totalmem = () => 0;
14
+ export const freemem = () => 0;
15
+ export const uptime = () => 0;
16
+ export const loadavg = () => [0, 0, 0];
17
+ export const networkInterfaces = () => ({});
18
+ export default {
19
+ EOL,
20
+ devNull,
21
+ platform,
22
+ type,
23
+ arch,
24
+ release,
25
+ hostname,
26
+ homedir,
27
+ tmpdir,
28
+ endianness,
29
+ cpus,
30
+ totalmem,
31
+ freemem,
32
+ uptime,
33
+ loadavg,
34
+ networkInterfaces,
35
+ };
36
+ //# sourceMappingURL=os.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"os.js","sourceRoot":"","sources":["../../src/node-compat/os.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC;AACxB,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC;AACnC,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;AACtC,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;AAClC,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;AAChC,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC;AAC1C,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;AACjC,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;AACnC,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;AACrC,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;AAC7B,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;AAChC,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;AAC/B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;AAC9B,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAE5C,eAAe;IACb,GAAG;IACH,OAAO;IACP,QAAQ;IACR,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,QAAQ;IACR,OAAO;IACP,MAAM;IACN,UAAU;IACV,IAAI;IACJ,QAAQ;IACR,OAAO;IACP,MAAM;IACN,OAAO;IACP,iBAAiB;CAClB,CAAC","sourcesContent":["/** `node:os` for browsers (nodejs_compat): constants and harmless answers, no host facts. */\nexport const EOL = \"\\n\";\nexport const devNull = \"/dev/null\";\nexport const platform = () => \"linux\";\nexport const type = () => \"Linux\";\nexport const arch = () => \"wasm\";\nexport const release = () => \"\";\nexport const hostname = () => \"localhost\";\nexport const homedir = () => \"/\";\nexport const tmpdir = () => \"/tmp\";\nexport const endianness = () => \"LE\";\nexport const cpus = () => [];\nexport const totalmem = () => 0;\nexport const freemem = () => 0;\nexport const uptime = () => 0;\nexport const loadavg = () => [0, 0, 0];\nexport const networkInterfaces = () => ({});\n\nexport default {\n EOL,\n devNull,\n platform,\n type,\n arch,\n release,\n hostname,\n homedir,\n tmpdir,\n endianness,\n cpus,\n totalmem,\n freemem,\n uptime,\n loadavg,\n networkInterfaces,\n};\n"]}
@@ -0,0 +1,14 @@
1
+ /** A minimal `process` for browsers (nodejs_compat): env, nextTick, platform data. */
2
+ export declare const process: {
3
+ env: Record<string, string>;
4
+ argv: string[];
5
+ platform: string;
6
+ version: string;
7
+ versions: {
8
+ node: string;
9
+ };
10
+ nextTick: (fn: (...a: unknown[]) => void, ...args: unknown[]) => void;
11
+ cwd: () => string;
12
+ emitWarning: () => void;
13
+ };
14
+ export default process;
@@ -0,0 +1,16 @@
1
+ /** A minimal `process` for browsers (nodejs_compat): env, nextTick, platform data. */
2
+ export const process = {
3
+ // The project's text `vars` when nodejs_compat populates process.env (browserProjectRuntime
4
+ // sets this global before the code, and with it this module, is evaluated).
5
+ env: (globalThis.__cellsProcessEnv ??
6
+ {}),
7
+ argv: [],
8
+ platform: "browser",
9
+ version: "v22.0.0",
10
+ versions: { node: "22.0.0" },
11
+ nextTick: (fn, ...args) => queueMicrotask(() => fn(...args)),
12
+ cwd: () => "/",
13
+ emitWarning: () => { },
14
+ };
15
+ export default process;
16
+ //# sourceMappingURL=process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../../src/node-compat/process.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,4FAA4F;IAC5F,4EAA4E;IAC5E,GAAG,EAAE,CAAE,UAA6D,CAAC,iBAAiB;QACpF,EAAE,CAA2B;IAC/B,IAAI,EAAE,EAAc;IACpB,QAAQ,EAAE,SAAS;IACnB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC5B,QAAQ,EAAE,CAAC,EAA6B,EAAE,GAAG,IAAe,EAAE,EAAE,CAC9D,cAAc,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACnC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG;IACd,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;CACtB,CAAC;AACF,eAAe,OAAO,CAAC","sourcesContent":["/** A minimal `process` for browsers (nodejs_compat): env, nextTick, platform data. */\nexport const process = {\n // The project's text `vars` when nodejs_compat populates process.env (browserProjectRuntime\n // sets this global before the code, and with it this module, is evaluated).\n env: ((globalThis as { __cellsProcessEnv?: Record<string, string> }).__cellsProcessEnv ??\n {}) as Record<string, string>,\n argv: [] as string[],\n platform: \"browser\",\n version: \"v22.0.0\",\n versions: { node: \"22.0.0\" },\n nextTick: (fn: (...a: unknown[]) => void, ...args: unknown[]) =>\n queueMicrotask(() => fn(...args)),\n cwd: () => \"/\",\n emitWarning: () => {},\n};\nexport default process;\n"]}
@@ -0,0 +1,4 @@
1
+ declare module "path-browserify" {
2
+ import path from "node:path";
3
+ export default path;
4
+ }
package/dist/node.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ export { nodeSqliteOpener } from "./adapters/node-sqlite.js";
2
+ export { sqliteObjectStore } from "./bucket/sqlite-object-store.js";
3
+ export { type CelldPeerServer, celldPeers, startCelldPeerServer } from "./peer/celld-peer.js";
4
+ export { bundleWorkerForBrowser } from "./project/browser-bundle.js";
5
+ export { applyNodeD1Migrations, loadNodeProject } from "./project/node-project.js";
package/dist/node.js ADDED
@@ -0,0 +1,6 @@
1
+ export { nodeSqliteOpener } from "./adapters/node-sqlite.js";
2
+ export { sqliteObjectStore } from "./bucket/sqlite-object-store.js";
3
+ export { celldPeers, startCelldPeerServer } from "./peer/celld-peer.js";
4
+ export { bundleWorkerForBrowser } from "./project/browser-bundle.js";
5
+ export { applyNodeD1Migrations, loadNodeProject } from "./project/node-project.js";
6
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAwB,UAAU,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC","sourcesContent":["export { nodeSqliteOpener } from \"./adapters/node-sqlite.js\";\nexport { sqliteObjectStore } from \"./bucket/sqlite-object-store.js\";\nexport { type CelldPeerServer, celldPeers, startCelldPeerServer } from \"./peer/celld-peer.js\";\nexport { bundleWorkerForBrowser } from \"./project/browser-bundle.js\";\nexport { applyNodeD1Migrations, loadNodeProject } from \"./project/node-project.js\";\n"]}
@@ -0,0 +1,53 @@
1
+ import type { ObjectStore } from "../bucket/object-store.js";
2
+ import type { CellRuntime } from "../core/runtime.js";
3
+ /** The fleet's peer secret (celld creates it in the bucket). */
4
+ export declare function loadPeerKey(store: ObjectStore): Promise<Uint8Array>;
5
+ /** Headers that sign one peer request from `source` to `target`. */
6
+ export declare function signPeerRequest(key: Uint8Array, source: string, target: string, method: string, pathAndQuery: string, body?: Uint8Array): {
7
+ "x-cells-peer-version": string;
8
+ "x-cells-peer-source": string;
9
+ "x-cells-peer-target": string;
10
+ "x-cells-peer-timestamp": string;
11
+ "x-cells-peer-nonce": string;
12
+ "x-cells-peer-body-sha256": string;
13
+ "x-cells-peer-signature": string;
14
+ };
15
+ /** celld's verification; returns a status and message on failure. */
16
+ export declare function verifyPeerRequest(key: Uint8Array, self: string, method: string, pathAndQuery: string, headers: Record<string, string | string[] | undefined>, body: Uint8Array, seen: Map<string, number>): {
17
+ status: number;
18
+ message: string;
19
+ stale?: boolean;
20
+ } | undefined;
21
+ export interface CelldPeerServer {
22
+ /** host:port celld dials (put it in the node record: celldBucket({ addr })). */
23
+ addr: string;
24
+ close(): Promise<void>;
25
+ }
26
+ /**
27
+ * Serves celld's peer tunnel for `runtime` on `host:port` (0: any free port). `node` is this
28
+ * node's name in the fleet (the same as celldBucket's `node`).
29
+ */
30
+ export declare function startCelldPeerServer(opts: {
31
+ runtime: CellRuntime;
32
+ store: ObjectStore;
33
+ node: string;
34
+ host?: string;
35
+ port?: number;
36
+ /** Answers celld's signed probe (celldBucket(...).probe): `celld diagnose --peer` reaches us. */
37
+ probe?: (challenge: string) => Promise<unknown>;
38
+ }): Promise<CelldPeerServer>;
39
+ /**
40
+ * Routing to cells celld nodes own, for CellRuntimeOptions.peers: `ownerOf` reads the cell's
41
+ * own.json, `endpoint` reaches the owner's address from its node record through the tunnel.
42
+ */
43
+ export declare function celldPeers(opts: {
44
+ store: ObjectStore;
45
+ node: string;
46
+ }): {
47
+ ownerOf(cellKey: string): Promise<string | undefined>;
48
+ link(): never;
49
+ endpoint(owner: string, cellKey: string, name: string | undefined): Promise<{
50
+ fetch(req: Request): Promise<Response>;
51
+ call(method: string, args: unknown[]): Promise<unknown>;
52
+ } | undefined>;
53
+ };