@smthrs/platform-bun 0.0.0-stage → 1.0.0-rc.13

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 (429) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/LICENSE +21 -0
  3. package/README.md +110 -2
  4. package/dist/cjs/BunFileSystem.d.ts +44 -0
  5. package/dist/cjs/BunFileSystem.d.ts.map +1 -0
  6. package/dist/cjs/BunFileSystem.js +38 -0
  7. package/dist/cjs/BunFileSystem.js.map +7 -0
  8. package/dist/cjs/BunHost.d.ts +205 -0
  9. package/dist/cjs/BunHost.d.ts.map +1 -0
  10. package/dist/cjs/BunHost.js +148 -0
  11. package/dist/cjs/BunHost.js.map +7 -0
  12. package/dist/cjs/index.d.ts +26 -0
  13. package/dist/cjs/index.d.ts.map +1 -0
  14. package/dist/cjs/index.js +37 -0
  15. package/dist/cjs/index.js.map +7 -0
  16. package/dist/cjs/package.json +1 -0
  17. package/dist/esm/BunFileSystem.d.ts +44 -0
  18. package/dist/esm/BunFileSystem.d.ts.map +1 -0
  19. package/dist/esm/BunFileSystem.js +35 -0
  20. package/dist/esm/BunFileSystem.js.map +1 -0
  21. package/dist/esm/BunHost.d.ts +205 -0
  22. package/dist/esm/BunHost.d.ts.map +1 -0
  23. package/dist/esm/BunHost.js +248 -0
  24. package/dist/esm/BunHost.js.map +1 -0
  25. package/dist/esm/index.d.ts +26 -0
  26. package/dist/esm/index.d.ts.map +1 -0
  27. package/dist/esm/index.js +26 -0
  28. package/dist/esm/index.js.map +1 -0
  29. package/dist/vendor/adapters.json +3067 -0
  30. package/dist/vendor/bun/BunAddressResolver.d.ts +15 -0
  31. package/dist/vendor/bun/BunAddressResolver.js +8 -0
  32. package/dist/vendor/bun/BunChildProcessSpawner.d.ts +8 -0
  33. package/dist/vendor/bun/BunChildProcessSpawner.js +14 -0
  34. package/dist/vendor/bun/BunClusterHttp.d.ts +76 -0
  35. package/dist/vendor/bun/BunClusterHttp.js +39 -0
  36. package/dist/vendor/bun/BunClusterSocket.d.ts +70 -0
  37. package/dist/vendor/bun/BunClusterSocket.js +22 -0
  38. package/dist/vendor/bun/BunCrypto.d.ts +11 -0
  39. package/dist/vendor/bun/BunCrypto.js +8 -0
  40. package/dist/vendor/bun/BunDatagramSocket.d.ts +227 -0
  41. package/dist/vendor/bun/BunDatagramSocket.js +11 -0
  42. package/dist/vendor/bun/BunDns.d.ts +72 -0
  43. package/dist/vendor/bun/BunDns.js +12 -0
  44. package/dist/vendor/bun/BunFileSystem.d.ts +11 -0
  45. package/dist/vendor/bun/BunFileSystem.js +9 -0
  46. package/dist/vendor/bun/BunHttpClient.d.ts +10 -0
  47. package/dist/vendor/bun/BunHttpClient.js +1 -0
  48. package/dist/vendor/bun/BunHttpPlatform.d.ts +11 -0
  49. package/dist/vendor/bun/BunHttpPlatform.js +11 -0
  50. package/dist/vendor/bun/BunHttpServer.d.ts +151 -0
  51. package/dist/vendor/bun/BunHttpServer.js +38 -0
  52. package/dist/vendor/bun/BunHttpServerRequest.d.ts +20 -0
  53. package/dist/vendor/bun/BunHttpServerRequest.js +7 -0
  54. package/dist/vendor/bun/BunMultipart.d.ts +34 -0
  55. package/dist/vendor/bun/BunMultipart.js +12 -0
  56. package/dist/vendor/bun/BunPath.d.ts +27 -0
  57. package/dist/vendor/bun/BunPath.js +12 -0
  58. package/dist/vendor/bun/BunRedis.d.ts +53 -0
  59. package/dist/vendor/bun/BunRedis.js +11 -0
  60. package/dist/vendor/bun/BunRuntime.d.ts +88 -0
  61. package/dist/vendor/bun/BunRuntime.js +8 -0
  62. package/dist/vendor/bun/BunServices.d.ts +37 -0
  63. package/dist/vendor/bun/BunServices.js +23 -0
  64. package/dist/vendor/bun/BunSink.d.ts +9 -0
  65. package/dist/vendor/bun/BunSink.js +12 -0
  66. package/dist/vendor/bun/BunSocket.d.ts +45 -0
  67. package/dist/vendor/bun/BunSocket.js +29 -0
  68. package/dist/vendor/bun/BunSocketServer.d.ts +9 -0
  69. package/dist/vendor/bun/BunSocketServer.js +21 -0
  70. package/dist/vendor/bun/BunStdio.d.ts +12 -0
  71. package/dist/vendor/bun/BunStdio.js +10 -0
  72. package/dist/vendor/bun/BunStream.d.ts +20 -0
  73. package/dist/vendor/bun/BunStream.js +30 -0
  74. package/dist/vendor/bun/BunTerminal.d.ts +24 -0
  75. package/dist/vendor/bun/BunTerminal.js +10 -0
  76. package/dist/vendor/bun/BunWorker.d.ts +22 -0
  77. package/dist/vendor/bun/BunWorker.js +9 -0
  78. package/dist/vendor/bun/BunWorkerRunner.d.ts +13 -0
  79. package/dist/vendor/bun/BunWorkerRunner.js +7 -0
  80. package/dist/vendor/bun/LICENSE +21 -0
  81. package/dist/vendor/bun/index.d.ts +130 -0
  82. package/dist/vendor/bun/index.js +121 -0
  83. package/dist/vendor/chunk-226TYKP6.js +60 -0
  84. package/dist/vendor/chunk-2ADOI6ZN.js +18 -0
  85. package/dist/vendor/chunk-2AP6TO77.js +71 -0
  86. package/dist/vendor/chunk-2LGUVSNM.js +20 -0
  87. package/dist/vendor/chunk-3SUO3TTE.js +40 -0
  88. package/dist/vendor/chunk-4O4Z52A2.js +48 -0
  89. package/dist/vendor/chunk-4YK2MHSO.js +20 -0
  90. package/dist/vendor/chunk-6B775XB2.js +85 -0
  91. package/dist/vendor/chunk-6KYVM2ZC.js +419 -0
  92. package/dist/vendor/chunk-6QPSLCUZ.js +0 -0
  93. package/dist/vendor/chunk-6R444NFO.js +104 -0
  94. package/dist/vendor/chunk-7JOAEKDV.js +503 -0
  95. package/dist/vendor/chunk-7VJC3PHX.js +63 -0
  96. package/dist/vendor/chunk-7ZKNPDTP.js +26 -0
  97. package/dist/vendor/chunk-ABPRHPJP.js +15 -0
  98. package/dist/vendor/chunk-AMAL6TRE.js +93 -0
  99. package/dist/vendor/chunk-AW6WQVI7.js +29 -0
  100. package/dist/vendor/chunk-BHV44Z6K.js +36 -0
  101. package/dist/vendor/chunk-BIR74JJK.js +93 -0
  102. package/dist/vendor/chunk-BTXZUHUI.js +7 -0
  103. package/dist/vendor/chunk-BVV46N3V.js +515 -0
  104. package/dist/vendor/chunk-C7UMBJO6.js +31 -0
  105. package/dist/vendor/chunk-CN4K2U6M.js +20 -0
  106. package/dist/vendor/chunk-D6XNHJPW.js +18 -0
  107. package/dist/vendor/chunk-DHTPLWAP.js +34 -0
  108. package/dist/vendor/chunk-DWSNOBD4.js +18 -0
  109. package/dist/vendor/chunk-DX4VFONH.js +81 -0
  110. package/dist/vendor/chunk-EIO7BKW3.js +63 -0
  111. package/dist/vendor/chunk-FIPFWLCV.js +144 -0
  112. package/dist/vendor/chunk-GITB76ZP.js +22 -0
  113. package/dist/vendor/chunk-GMORYZG4.js +62 -0
  114. package/dist/vendor/chunk-HXGVOKHF.js +22 -0
  115. package/dist/vendor/chunk-HYPKWCVW.js +374 -0
  116. package/dist/vendor/chunk-IJON5WTO.js +34 -0
  117. package/dist/vendor/chunk-IXI7RW3A.js +580 -0
  118. package/dist/vendor/chunk-J43O5GFH.js +28 -0
  119. package/dist/vendor/chunk-JTST2Z7N.js +58 -0
  120. package/dist/vendor/chunk-JYD572EF.js +18 -0
  121. package/dist/vendor/chunk-K6GWBGJM.js +16 -0
  122. package/dist/vendor/chunk-KANNAI65.js +62 -0
  123. package/dist/vendor/chunk-KEMBVIRS.js +128 -0
  124. package/dist/vendor/chunk-LOB26XOO.js +0 -0
  125. package/dist/vendor/chunk-M2QOSF47.js +53 -0
  126. package/dist/vendor/chunk-MLKGABMK.js +9 -0
  127. package/dist/vendor/chunk-NGGMPIWR.js +65 -0
  128. package/dist/vendor/chunk-NNTJGFLB.js +21 -0
  129. package/dist/vendor/chunk-NU53DHQR.js +18 -0
  130. package/dist/vendor/chunk-OAY4MA3I.js +28 -0
  131. package/dist/vendor/chunk-OV2KKGBA.js +16 -0
  132. package/dist/vendor/chunk-PBM2HJOX.js +118 -0
  133. package/dist/vendor/chunk-Q5UCOQNO.js +70 -0
  134. package/dist/vendor/chunk-Q7YXUH7M.js +414 -0
  135. package/dist/vendor/chunk-QKYYD3AZ.js +131 -0
  136. package/dist/vendor/chunk-QLI7T34M.js +18 -0
  137. package/dist/vendor/chunk-QR2ZOVOL.js +18 -0
  138. package/dist/vendor/chunk-R2PFJKSP.js +274 -0
  139. package/dist/vendor/chunk-RX5TKFP7.js +51 -0
  140. package/dist/vendor/chunk-S3MN5OXB.js +34 -0
  141. package/dist/vendor/chunk-T5WDTZCE.js +249 -0
  142. package/dist/vendor/chunk-TBMTA5LD.js +14 -0
  143. package/dist/vendor/chunk-TCKM3JXD.js +325 -0
  144. package/dist/vendor/chunk-UXIG7ALP.js +229 -0
  145. package/dist/vendor/chunk-V577GRCI.js +438 -0
  146. package/dist/vendor/chunk-VS6VBUH6.js +57 -0
  147. package/dist/vendor/chunk-WGUQHMX2.js +18 -0
  148. package/dist/vendor/chunk-WNS3OER2.js +18 -0
  149. package/dist/vendor/chunk-X6FYP2EH.js +109 -0
  150. package/dist/vendor/chunk-XAVBQY4D.js +20 -0
  151. package/dist/vendor/chunk-XAZH2ZEU.js +43 -0
  152. package/dist/vendor/chunk-XDPP24MG.js +129 -0
  153. package/dist/vendor/chunk-XF3WZCMZ.js +26 -0
  154. package/dist/vendor/chunk-XXVMTKX5.js +0 -0
  155. package/dist/vendor/chunk-YJGNV6EV.js +85 -0
  156. package/dist/vendor/chunk-ZJEHEPDQ.js +18 -0
  157. package/dist/vendor/cjs/bun/BunAddressResolver.d.ts +15 -0
  158. package/dist/vendor/cjs/bun/BunAddressResolver.js +1 -0
  159. package/dist/vendor/cjs/bun/BunChildProcessSpawner.d.ts +8 -0
  160. package/dist/vendor/cjs/bun/BunChildProcessSpawner.js +1 -0
  161. package/dist/vendor/cjs/bun/BunClusterHttp.d.ts +76 -0
  162. package/dist/vendor/cjs/bun/BunClusterHttp.js +1 -0
  163. package/dist/vendor/cjs/bun/BunClusterSocket.d.ts +70 -0
  164. package/dist/vendor/cjs/bun/BunClusterSocket.js +1 -0
  165. package/dist/vendor/cjs/bun/BunCrypto.d.ts +11 -0
  166. package/dist/vendor/cjs/bun/BunCrypto.js +1 -0
  167. package/dist/vendor/cjs/bun/BunDatagramSocket.d.ts +227 -0
  168. package/dist/vendor/cjs/bun/BunDatagramSocket.js +1 -0
  169. package/dist/vendor/cjs/bun/BunDns.d.ts +72 -0
  170. package/dist/vendor/cjs/bun/BunDns.js +1 -0
  171. package/dist/vendor/cjs/bun/BunFileSystem.d.ts +11 -0
  172. package/dist/vendor/cjs/bun/BunFileSystem.js +1 -0
  173. package/dist/vendor/cjs/bun/BunHttpClient.d.ts +10 -0
  174. package/dist/vendor/cjs/bun/BunHttpClient.js +1 -0
  175. package/dist/vendor/cjs/bun/BunHttpPlatform.d.ts +11 -0
  176. package/dist/vendor/cjs/bun/BunHttpPlatform.js +1 -0
  177. package/dist/vendor/cjs/bun/BunHttpServer.d.ts +151 -0
  178. package/dist/vendor/cjs/bun/BunHttpServer.js +1 -0
  179. package/dist/vendor/cjs/bun/BunHttpServerRequest.d.ts +20 -0
  180. package/dist/vendor/cjs/bun/BunHttpServerRequest.js +1 -0
  181. package/dist/vendor/cjs/bun/BunMultipart.d.ts +34 -0
  182. package/dist/vendor/cjs/bun/BunMultipart.js +1 -0
  183. package/dist/vendor/cjs/bun/BunPath.d.ts +27 -0
  184. package/dist/vendor/cjs/bun/BunPath.js +1 -0
  185. package/dist/vendor/cjs/bun/BunRedis.d.ts +53 -0
  186. package/dist/vendor/cjs/bun/BunRedis.js +1 -0
  187. package/dist/vendor/cjs/bun/BunRuntime.d.ts +88 -0
  188. package/dist/vendor/cjs/bun/BunRuntime.js +1 -0
  189. package/dist/vendor/cjs/bun/BunServices.d.ts +37 -0
  190. package/dist/vendor/cjs/bun/BunServices.js +1 -0
  191. package/dist/vendor/cjs/bun/BunSink.d.ts +9 -0
  192. package/dist/vendor/cjs/bun/BunSink.js +1 -0
  193. package/dist/vendor/cjs/bun/BunSocket.d.ts +45 -0
  194. package/dist/vendor/cjs/bun/BunSocket.js +1 -0
  195. package/dist/vendor/cjs/bun/BunSocketServer.d.ts +9 -0
  196. package/dist/vendor/cjs/bun/BunSocketServer.js +1 -0
  197. package/dist/vendor/cjs/bun/BunStdio.d.ts +12 -0
  198. package/dist/vendor/cjs/bun/BunStdio.js +1 -0
  199. package/dist/vendor/cjs/bun/BunStream.d.ts +20 -0
  200. package/dist/vendor/cjs/bun/BunStream.js +1 -0
  201. package/dist/vendor/cjs/bun/BunTerminal.d.ts +24 -0
  202. package/dist/vendor/cjs/bun/BunTerminal.js +1 -0
  203. package/dist/vendor/cjs/bun/BunWorker.d.ts +22 -0
  204. package/dist/vendor/cjs/bun/BunWorker.js +1 -0
  205. package/dist/vendor/cjs/bun/BunWorkerRunner.d.ts +13 -0
  206. package/dist/vendor/cjs/bun/BunWorkerRunner.js +1 -0
  207. package/dist/vendor/cjs/bun/index.d.ts +130 -0
  208. package/dist/vendor/cjs/bun/index.js +1 -0
  209. package/dist/vendor/cjs/node/NodeAddressResolver.d.ts +16 -0
  210. package/dist/vendor/cjs/node/NodeAddressResolver.js +1 -0
  211. package/dist/vendor/cjs/node/NodeChildProcessSpawner.d.ts +8 -0
  212. package/dist/vendor/cjs/node/NodeChildProcessSpawner.js +1 -0
  213. package/dist/vendor/cjs/node/NodeClusterHttp.d.ts +54 -0
  214. package/dist/vendor/cjs/node/NodeClusterHttp.js +1 -0
  215. package/dist/vendor/cjs/node/NodeClusterSocket.d.ts +85 -0
  216. package/dist/vendor/cjs/node/NodeClusterSocket.js +1 -0
  217. package/dist/vendor/cjs/node/NodeCrypto.d.ts +11 -0
  218. package/dist/vendor/cjs/node/NodeCrypto.js +1 -0
  219. package/dist/vendor/cjs/node/NodeDatagramSocket.d.ts +10 -0
  220. package/dist/vendor/cjs/node/NodeDatagramSocket.js +1 -0
  221. package/dist/vendor/cjs/node/NodeDns.d.ts +51 -0
  222. package/dist/vendor/cjs/node/NodeDns.js +1 -0
  223. package/dist/vendor/cjs/node/NodeFileSystem.d.ts +11 -0
  224. package/dist/vendor/cjs/node/NodeFileSystem.js +1 -0
  225. package/dist/vendor/cjs/node/NodeHttpClient.d.ts +303 -0
  226. package/dist/vendor/cjs/node/NodeHttpClient.js +1 -0
  227. package/dist/vendor/cjs/node/NodeHttpIncomingMessage.d.ts +64 -0
  228. package/dist/vendor/cjs/node/NodeHttpIncomingMessage.js +1 -0
  229. package/dist/vendor/cjs/node/NodeHttpPlatform.d.ts +38 -0
  230. package/dist/vendor/cjs/node/NodeHttpPlatform.js +1 -0
  231. package/dist/vendor/cjs/node/NodeHttpServer.d.ts +131 -0
  232. package/dist/vendor/cjs/node/NodeHttpServer.js +1 -0
  233. package/dist/vendor/cjs/node/NodeHttpServerRequest.d.ts +32 -0
  234. package/dist/vendor/cjs/node/NodeHttpServerRequest.js +1 -0
  235. package/dist/vendor/cjs/node/NodeMultipart.d.ts +50 -0
  236. package/dist/vendor/cjs/node/NodeMultipart.js +1 -0
  237. package/dist/vendor/cjs/node/NodeMultipartParser.d.ts +105 -0
  238. package/dist/vendor/cjs/node/NodeMultipartParser.js +1 -0
  239. package/dist/vendor/cjs/node/NodePath.d.ts +30 -0
  240. package/dist/vendor/cjs/node/NodePath.js +1 -0
  241. package/dist/vendor/cjs/node/NodeRedis.d.ts +78 -0
  242. package/dist/vendor/cjs/node/NodeRedis.js +1 -0
  243. package/dist/vendor/cjs/node/NodeRuntime.d.ts +88 -0
  244. package/dist/vendor/cjs/node/NodeRuntime.js +1 -0
  245. package/dist/vendor/cjs/node/NodeServices.d.ts +37 -0
  246. package/dist/vendor/cjs/node/NodeServices.js +1 -0
  247. package/dist/vendor/cjs/node/NodeSink.d.ts +9 -0
  248. package/dist/vendor/cjs/node/NodeSink.js +1 -0
  249. package/dist/vendor/cjs/node/NodeSocket.d.ts +45 -0
  250. package/dist/vendor/cjs/node/NodeSocket.js +1 -0
  251. package/dist/vendor/cjs/node/NodeSocketServer.d.ts +9 -0
  252. package/dist/vendor/cjs/node/NodeSocketServer.js +1 -0
  253. package/dist/vendor/cjs/node/NodeStdio.d.ts +12 -0
  254. package/dist/vendor/cjs/node/NodeStdio.js +1 -0
  255. package/dist/vendor/cjs/node/NodeStream.d.ts +9 -0
  256. package/dist/vendor/cjs/node/NodeStream.js +1 -0
  257. package/dist/vendor/cjs/node/NodeTerminal.d.ts +24 -0
  258. package/dist/vendor/cjs/node/NodeTerminal.js +1 -0
  259. package/dist/vendor/cjs/node/NodeWorker.d.ts +24 -0
  260. package/dist/vendor/cjs/node/NodeWorker.js +1 -0
  261. package/dist/vendor/cjs/node/NodeWorkerRunner.d.ts +13 -0
  262. package/dist/vendor/cjs/node/NodeWorkerRunner.js +1 -0
  263. package/dist/vendor/cjs/node/Undici.d.ts +31 -0
  264. package/dist/vendor/cjs/node/Undici.js +1 -0
  265. package/dist/vendor/cjs/node/index.d.ts +140 -0
  266. package/dist/vendor/cjs/node/index.js +1 -0
  267. package/dist/vendor/cjs/node-shared/NodeAddressResolver.d.ts +13 -0
  268. package/dist/vendor/cjs/node-shared/NodeAddressResolver.js +1 -0
  269. package/dist/vendor/cjs/node-shared/NodeChildProcessSpawner.d.ts +66 -0
  270. package/dist/vendor/cjs/node-shared/NodeChildProcessSpawner.js +1 -0
  271. package/dist/vendor/cjs/node-shared/NodeClusterSocket.d.ts +35 -0
  272. package/dist/vendor/cjs/node-shared/NodeClusterSocket.js +1 -0
  273. package/dist/vendor/cjs/node-shared/NodeCrypto.d.ts +30 -0
  274. package/dist/vendor/cjs/node-shared/NodeCrypto.js +1 -0
  275. package/dist/vendor/cjs/node-shared/NodeDatagramSocket.d.ts +246 -0
  276. package/dist/vendor/cjs/node-shared/NodeDatagramSocket.js +1 -0
  277. package/dist/vendor/cjs/node-shared/NodeDns.d.ts +221 -0
  278. package/dist/vendor/cjs/node-shared/NodeDns.js +1 -0
  279. package/dist/vendor/cjs/node-shared/NodeFileSystem.d.ts +12 -0
  280. package/dist/vendor/cjs/node-shared/NodeFileSystem.js +1 -0
  281. package/dist/vendor/cjs/node-shared/NodeHttpCompression.d.ts +40 -0
  282. package/dist/vendor/cjs/node-shared/NodeHttpCompression.js +1 -0
  283. package/dist/vendor/cjs/node-shared/NodePath.d.ts +30 -0
  284. package/dist/vendor/cjs/node-shared/NodePath.js +1 -0
  285. package/dist/vendor/cjs/node-shared/NodeRuntime.d.ts +51 -0
  286. package/dist/vendor/cjs/node-shared/NodeRuntime.js +1 -0
  287. package/dist/vendor/cjs/node-shared/NodeSink.d.ts +73 -0
  288. package/dist/vendor/cjs/node-shared/NodeSink.js +1 -0
  289. package/dist/vendor/cjs/node-shared/NodeSocket.d.ts +144 -0
  290. package/dist/vendor/cjs/node-shared/NodeSocket.js +1 -0
  291. package/dist/vendor/cjs/node-shared/NodeSocketServer.d.ts +87 -0
  292. package/dist/vendor/cjs/node-shared/NodeSocketServer.js +1 -0
  293. package/dist/vendor/cjs/node-shared/NodeStdio.d.ts +13 -0
  294. package/dist/vendor/cjs/node-shared/NodeStdio.js +1 -0
  295. package/dist/vendor/cjs/node-shared/NodeStream.d.ts +194 -0
  296. package/dist/vendor/cjs/node-shared/NodeStream.js +1 -0
  297. package/dist/vendor/cjs/node-shared/NodeTerminal.d.ts +24 -0
  298. package/dist/vendor/cjs/node-shared/NodeTerminal.js +1 -0
  299. package/dist/vendor/cjs/node-shared/index.d.ts +85 -0
  300. package/dist/vendor/cjs/node-shared/index.js +1 -0
  301. package/dist/vendor/cjs/node-shared/internal/nodeChildProcessSpawner.d.ts +4 -0
  302. package/dist/vendor/cjs/node-shared/internal/nodeChildProcessSpawner.js +1 -0
  303. package/dist/vendor/cjs/node-shared/internal/utils.d.ts +2 -0
  304. package/dist/vendor/cjs/node-shared/internal/utils.js +1 -0
  305. package/dist/vendor/cjs/package.json +1 -0
  306. package/dist/vendor/cjs/platform-bun.d.ts +130 -0
  307. package/dist/vendor/cjs/platform-bun.js +1 -0
  308. package/dist/vendor/cjs/platform-node-shared.d.ts +85 -0
  309. package/dist/vendor/cjs/platform-node-shared.js +1 -0
  310. package/dist/vendor/cjs/platform-node.d.ts +140 -0
  311. package/dist/vendor/cjs/platform-node.js +1 -0
  312. package/dist/vendor/node/LICENSE +21 -0
  313. package/dist/vendor/node/NodeAddressResolver.d.ts +16 -0
  314. package/dist/vendor/node/NodeAddressResolver.js +8 -0
  315. package/dist/vendor/node/NodeChildProcessSpawner.d.ts +8 -0
  316. package/dist/vendor/node/NodeChildProcessSpawner.js +14 -0
  317. package/dist/vendor/node/NodeClusterHttp.d.ts +54 -0
  318. package/dist/vendor/node/NodeClusterHttp.js +43 -0
  319. package/dist/vendor/node/NodeClusterSocket.d.ts +85 -0
  320. package/dist/vendor/node/NodeClusterSocket.js +30 -0
  321. package/dist/vendor/node/NodeCrypto.d.ts +11 -0
  322. package/dist/vendor/node/NodeCrypto.js +8 -0
  323. package/dist/vendor/node/NodeDatagramSocket.d.ts +10 -0
  324. package/dist/vendor/node/NodeDatagramSocket.js +12 -0
  325. package/dist/vendor/node/NodeDns.d.ts +51 -0
  326. package/dist/vendor/node/NodeDns.js +12 -0
  327. package/dist/vendor/node/NodeFileSystem.d.ts +11 -0
  328. package/dist/vendor/node/NodeFileSystem.js +9 -0
  329. package/dist/vendor/node/NodeHttpClient.d.ts +303 -0
  330. package/dist/vendor/node/NodeHttpClient.js +54 -0
  331. package/dist/vendor/node/NodeHttpIncomingMessage.d.ts +64 -0
  332. package/dist/vendor/node/NodeHttpIncomingMessage.js +10 -0
  333. package/dist/vendor/node/NodeHttpPlatform.d.ts +38 -0
  334. package/dist/vendor/node/NodeHttpPlatform.js +16 -0
  335. package/dist/vendor/node/NodeHttpServer.d.ts +131 -0
  336. package/dist/vendor/node/NodeHttpServer.js +46 -0
  337. package/dist/vendor/node/NodeHttpServerRequest.d.ts +32 -0
  338. package/dist/vendor/node/NodeHttpServerRequest.js +9 -0
  339. package/dist/vendor/node/NodeMultipart.d.ts +50 -0
  340. package/dist/vendor/node/NodeMultipart.js +15 -0
  341. package/dist/vendor/node/NodeMultipartParser.d.ts +105 -0
  342. package/dist/vendor/node/NodeMultipartParser.js +11 -0
  343. package/dist/vendor/node/NodePath.d.ts +30 -0
  344. package/dist/vendor/node/NodePath.js +12 -0
  345. package/dist/vendor/node/NodeRedis.d.ts +78 -0
  346. package/dist/vendor/node/NodeRedis.js +11 -0
  347. package/dist/vendor/node/NodeRuntime.d.ts +88 -0
  348. package/dist/vendor/node/NodeRuntime.js +8 -0
  349. package/dist/vendor/node/NodeServices.d.ts +37 -0
  350. package/dist/vendor/node/NodeServices.js +23 -0
  351. package/dist/vendor/node/NodeSink.d.ts +9 -0
  352. package/dist/vendor/node/NodeSink.js +12 -0
  353. package/dist/vendor/node/NodeSocket.d.ts +45 -0
  354. package/dist/vendor/node/NodeSocket.js +31 -0
  355. package/dist/vendor/node/NodeSocketServer.d.ts +9 -0
  356. package/dist/vendor/node/NodeSocketServer.js +21 -0
  357. package/dist/vendor/node/NodeStdio.d.ts +12 -0
  358. package/dist/vendor/node/NodeStdio.js +10 -0
  359. package/dist/vendor/node/NodeStream.d.ts +9 -0
  360. package/dist/vendor/node/NodeStream.js +27 -0
  361. package/dist/vendor/node/NodeTerminal.d.ts +24 -0
  362. package/dist/vendor/node/NodeTerminal.js +10 -0
  363. package/dist/vendor/node/NodeWorker.d.ts +24 -0
  364. package/dist/vendor/node/NodeWorker.js +9 -0
  365. package/dist/vendor/node/NodeWorkerRunner.d.ts +13 -0
  366. package/dist/vendor/node/NodeWorkerRunner.js +7 -0
  367. package/dist/vendor/node/Undici.d.ts +31 -0
  368. package/dist/vendor/node/Undici.js +9 -0
  369. package/dist/vendor/node/index.d.ts +140 -0
  370. package/dist/vendor/node/index.js +130 -0
  371. package/dist/vendor/node-shared/LICENSE +21 -0
  372. package/dist/vendor/node-shared/NodeAddressResolver.d.ts +13 -0
  373. package/dist/vendor/node-shared/NodeAddressResolver.js +7 -0
  374. package/dist/vendor/node-shared/NodeChildProcessSpawner.d.ts +66 -0
  375. package/dist/vendor/node-shared/NodeChildProcessSpawner.js +13 -0
  376. package/dist/vendor/node-shared/NodeClusterSocket.d.ts +35 -0
  377. package/dist/vendor/node-shared/NodeClusterSocket.js +11 -0
  378. package/dist/vendor/node-shared/NodeCrypto.d.ts +30 -0
  379. package/dist/vendor/node-shared/NodeCrypto.js +9 -0
  380. package/dist/vendor/node-shared/NodeDatagramSocket.d.ts +246 -0
  381. package/dist/vendor/node-shared/NodeDatagramSocket.js +11 -0
  382. package/dist/vendor/node-shared/NodeDns.d.ts +221 -0
  383. package/dist/vendor/node-shared/NodeDns.js +31 -0
  384. package/dist/vendor/node-shared/NodeFileSystem.d.ts +12 -0
  385. package/dist/vendor/node-shared/NodeFileSystem.js +8 -0
  386. package/dist/vendor/node-shared/NodeHttpCompression.d.ts +40 -0
  387. package/dist/vendor/node-shared/NodeHttpCompression.js +13 -0
  388. package/dist/vendor/node-shared/NodePath.d.ts +30 -0
  389. package/dist/vendor/node-shared/NodePath.js +11 -0
  390. package/dist/vendor/node-shared/NodeRuntime.d.ts +51 -0
  391. package/dist/vendor/node-shared/NodeRuntime.js +7 -0
  392. package/dist/vendor/node-shared/NodeSink.d.ts +73 -0
  393. package/dist/vendor/node-shared/NodeSink.js +11 -0
  394. package/dist/vendor/node-shared/NodeSocket.d.ts +144 -0
  395. package/dist/vendor/node-shared/NodeSocket.js +23 -0
  396. package/dist/vendor/node-shared/NodeSocketServer.d.ts +87 -0
  397. package/dist/vendor/node-shared/NodeSocketServer.js +20 -0
  398. package/dist/vendor/node-shared/NodeStdio.d.ts +13 -0
  399. package/dist/vendor/node-shared/NodeStdio.js +9 -0
  400. package/dist/vendor/node-shared/NodeStream.d.ts +194 -0
  401. package/dist/vendor/node-shared/NodeStream.js +26 -0
  402. package/dist/vendor/node-shared/NodeTerminal.d.ts +24 -0
  403. package/dist/vendor/node-shared/NodeTerminal.js +9 -0
  404. package/dist/vendor/node-shared/index.d.ts +85 -0
  405. package/dist/vendor/node-shared/index.js +70 -0
  406. package/dist/vendor/node-shared/internal/nodeChildProcessSpawner.d.ts +4 -0
  407. package/dist/vendor/node-shared/internal/nodeChildProcessSpawner.js +7 -0
  408. package/dist/vendor/node-shared/internal/utils.d.ts +2 -0
  409. package/dist/vendor/node-shared/internal/utils.js +7 -0
  410. package/dist/vendor/platform-bun.d.ts +130 -0
  411. package/dist/vendor/platform-bun.js +121 -0
  412. package/dist/vendor/platform-node-shared.d.ts +85 -0
  413. package/dist/vendor/platform-node-shared.js +70 -0
  414. package/dist/vendor/platform-node.d.ts +140 -0
  415. package/dist/vendor/platform-node.js +130 -0
  416. package/docs/README.md +135 -0
  417. package/docs/api.md +264 -0
  418. package/docs/concepts/host-surface.md +152 -0
  419. package/docs/concepts/runtime-parity.md +80 -0
  420. package/docs/guides/bind-a-repository-root.md +109 -0
  421. package/docs/guides/configure-the-filesystem-helper.md +113 -0
  422. package/docs/guides/contain-child-processes.md +178 -0
  423. package/docs/installation.md +131 -0
  424. package/docs/quickstart.md +163 -0
  425. package/docs/troubleshooting.md +163 -0
  426. package/package.json +146 -3
  427. package/src/BunFileSystem.ts +47 -0
  428. package/src/BunHost.ts +345 -0
  429. package/src/index.ts +27 -0
@@ -0,0 +1,325 @@
1
+ import {
2
+ __export
3
+ } from "./chunk-MLKGABMK.js";
4
+
5
+ // ../../../../node_modules/.pnpm/@effect+platform-node-shared@4.0.5_effect@4.0.5/node_modules/@effect/platform-node-shared/dist/NodeDatagramSocket.js
6
+ var NodeDatagramSocket_exports = {};
7
+ __export(NodeDatagramSocket_exports, {
8
+ fromSocket: () => fromSocket,
9
+ layer: () => layer,
10
+ make: () => make
11
+ });
12
+ import * as Effect from "effect/Effect";
13
+ import * as Layer from "effect/Layer";
14
+ import * as NetAddress from "effect/net/NetAddress";
15
+ import * as DatagramSocket from "effect/socket/DatagramSocket";
16
+ import * as Dgram from "node:dgram";
17
+ import * as Dns from "node:dns";
18
+ import * as Net from "node:net";
19
+ import * as Os from "node:os";
20
+ var make = (options = {}) => DatagramSocket.makeFromBackingSocket((events) => open(options, events), options);
21
+ var fromSocket = (acquire, options = {}) => DatagramSocket.makeFromBackingSocket((events) => Effect.flatMap(acquire, (socket) => adopt(socket, options, events)), options);
22
+ var layer = (options) => Layer.effect(DatagramSocket.DatagramSocket, make(options));
23
+ var noScopeIds = /* @__PURE__ */ new Map();
24
+ var interfaceScopeIds = () => {
25
+ if (process.platform === "win32") return noScopeIds;
26
+ try {
27
+ return NetAddress.scopeIdsFromInterfaces(Object.entries(Os.networkInterfaces()));
28
+ } catch {
29
+ return noScopeIds;
30
+ }
31
+ };
32
+ var scopeIdsFor = (family) => family === "ipv6" ? interfaceScopeIds() : noScopeIds;
33
+ var familyOfLiteral = (address) => {
34
+ if (typeof address !== "string") return NetAddress.isIpv4Address(address) ? "ipv4" : "ipv6";
35
+ const version = Net.isIP(address);
36
+ return version === 4 ? "ipv4" : version === 6 ? "ipv6" : void 0;
37
+ };
38
+ var formatEndpoint = (endpoint, scopeIds) => NetAddress.isInetAddress(endpoint) ? NetAddress.formatNativeHost(endpoint, scopeIds) : endpoint.address === void 0 || typeof endpoint.address === "string" ? endpoint.address : NetAddress.formatIp(endpoint.address);
39
+ var resolve = (address, family, onError, next) => {
40
+ if (typeof address !== "string") return next(void 0);
41
+ const literal = familyOfLiteral(address);
42
+ if (literal !== void 0) return next({
43
+ host: address,
44
+ family: literal
45
+ });
46
+ try {
47
+ Dns.lookup(address, {
48
+ all: true,
49
+ family: family === "ipv4" ? 4 : family === "ipv6" ? 6 : 0
50
+ }, (error, results) => {
51
+ if (error) return onError(error);
52
+ const result = results.find((result2) => result2.family === 4) ?? results[0];
53
+ if (result === void 0) return onError(new Error(`${address} has no addresses`));
54
+ next({
55
+ host: result.address,
56
+ family: result.family === 6 ? "ipv6" : "ipv4"
57
+ });
58
+ });
59
+ } catch (error) {
60
+ onError(error);
61
+ }
62
+ };
63
+ var planOpen = (options, scopeIdsOf, onLookupError, next) => {
64
+ const {
65
+ bind: bind2,
66
+ remote
67
+ } = options;
68
+ const fixed = options.family ?? (bind2?.address === void 0 ? void 0 : familyOfLiteral(bind2.address));
69
+ resolve(remote?.address, fixed, onLookupError, (resolvedRemote) => {
70
+ const remoteFamily = resolvedRemote?.family ?? (remote === void 0 ? void 0 : familyOfLiteral(remote.address));
71
+ resolve(bind2?.address, fixed ?? remoteFamily, onLookupError, (resolvedBind) => {
72
+ const family = fixed ?? remoteFamily ?? resolvedBind?.family ?? "ipv4";
73
+ const scopeIds = scopeIdsOf(family);
74
+ next({
75
+ family,
76
+ scopeIds,
77
+ bindHost: resolvedBind?.host ?? (bind2 === void 0 ? void 0 : formatEndpoint(bind2, scopeIds)) ?? (family === "ipv6" ? "::" : "0.0.0.0"),
78
+ remote: remote === void 0 ? void 0 : {
79
+ host: resolvedRemote?.host ?? formatEndpoint(remote, scopeIds),
80
+ port: remote.port
81
+ }
82
+ });
83
+ });
84
+ });
85
+ };
86
+ var resolvePeer = (peer, family, scopeIds, onLookupError, next) => {
87
+ if (peer === void 0) return next(void 0);
88
+ if (typeof peer.address !== "string") return next({
89
+ host: formatEndpoint(peer, scopeIds),
90
+ port: peer.port
91
+ });
92
+ resolve(peer.address, family, onLookupError, (resolved) => next({
93
+ host: resolved.host,
94
+ port: peer.port
95
+ }));
96
+ };
97
+ var errorCode = (error) => typeof error === "object" && error !== null ? error.code : void 0;
98
+ var openError = (error, kind) => {
99
+ if (kind === void 0) {
100
+ const code = errorCode(error);
101
+ kind = code === "EADDRINUSE" ? "AddressInUse" : code === "EADDRNOTAVAIL" ? "AddressNotAvailable" : code === "EACCES" || code === "EPERM" ? "PermissionDenied" : "Unknown";
102
+ }
103
+ return new DatagramSocket.DatagramSocketError({
104
+ reason: new DatagramSocket.DatagramSocketOpenError({
105
+ kind,
106
+ cause: error
107
+ })
108
+ });
109
+ };
110
+ var ioKind = (error) => {
111
+ switch (errorCode(error)) {
112
+ case "EMSGSIZE":
113
+ return "MessageTooLarge";
114
+ case "EHOSTUNREACH":
115
+ case "ENETUNREACH":
116
+ case "EHOSTDOWN":
117
+ case "ENETDOWN":
118
+ return "Unreachable";
119
+ case "ECONNREFUSED":
120
+ return "ConnectionRefused";
121
+ case "EACCES":
122
+ case "EPERM":
123
+ return "PermissionDenied";
124
+ default:
125
+ return "Unknown";
126
+ }
127
+ };
128
+ var closedError = () => new DatagramSocket.DatagramSocketError({
129
+ reason: new DatagramSocket.DatagramSocketClosedError()
130
+ });
131
+ var ioWriteError = (error, kind = ioKind(error)) => new DatagramSocket.DatagramSocketError({
132
+ reason: new DatagramSocket.DatagramSocketWriteError({
133
+ kind,
134
+ cause: error
135
+ })
136
+ });
137
+ var readError = (error, kind = ioKind(error)) => new DatagramSocket.DatagramSocketError({
138
+ reason: new DatagramSocket.DatagramSocketReadError({
139
+ kind,
140
+ cause: error
141
+ })
142
+ });
143
+ var immediateLookup = (hostname, family, callback2) => callback2(null, hostname, family === 6 ? 6 : 4);
144
+ var writeError = (error) => errorCode(error) === "ERR_SOCKET_DGRAM_NOT_RUNNING" ? closedError() : ioWriteError(error);
145
+ var open = (options, events) => (
146
+ // Core lets uncancellable lookups finish and closes abandoned sockets.
147
+ Effect.callback((resume) => {
148
+ planOpen({
149
+ family: options.family,
150
+ bind: options.bind,
151
+ remote: options.connect ?? options.peer
152
+ }, scopeIdsFor, (error) => resume(Effect.fail(openError(error, "AddressNotAvailable"))), (plan) => bind(options, events, plan, resume));
153
+ })
154
+ );
155
+ var bind = (options, events, {
156
+ bindHost: host,
157
+ family,
158
+ remote,
159
+ scopeIds
160
+ }, resume) => {
161
+ let socket;
162
+ try {
163
+ socket = Dgram.createSocket({
164
+ type: family === "ipv6" ? "udp6" : "udp4",
165
+ reuseAddr: options.reuseAddress,
166
+ reusePort: options.reusePort,
167
+ ipv6Only: options.ipv6Only,
168
+ lookup: immediateLookup
169
+ });
170
+ } catch (error) {
171
+ return resume(Effect.fail(openError(error)));
172
+ }
173
+ const native = new NativeSocket(socket, events);
174
+ const fail2 = (error) => {
175
+ native.close();
176
+ resume(Effect.fail(error));
177
+ };
178
+ native.onOpenError = (error) => fail2(openError(error));
179
+ try {
180
+ socket.bind({
181
+ address: host,
182
+ port: options.bind?.port ?? 0
183
+ }, () => {
184
+ try {
185
+ if (options.kernelReceiveBufferSize !== void 0) socket.setRecvBufferSize(options.kernelReceiveBufferSize);
186
+ if (options.kernelSendBufferSize !== void 0) socket.setSendBufferSize(options.kernelSendBufferSize);
187
+ if (options.broadcast !== void 0) socket.setBroadcast(options.broadcast);
188
+ if (options.ttl !== void 0) socket.setTTL(options.ttl);
189
+ const multicast = options.multicast;
190
+ if (multicast?.ttl !== void 0) socket.setMulticastTTL(multicast.ttl);
191
+ if (multicast?.loopback !== void 0) socket.setMulticastLoopback(multicast.loopback);
192
+ if (multicast?.interface !== void 0) {
193
+ socket.setMulticastInterface(NetAddress.formatMulticastInterface(multicast.interface, scopeIds));
194
+ }
195
+ } catch (error) {
196
+ return fail2(openError(error));
197
+ }
198
+ if (options.connect === void 0) return resume(Effect.succeed(native.open(scopeIds, remote, false)));
199
+ try {
200
+ socket.connect(remote.port, remote.host, (error) => {
201
+ if (error) return fail2(openError(error));
202
+ resume(Effect.succeed(native.open(scopeIds, remote, true)));
203
+ });
204
+ } catch (error) {
205
+ fail2(openError(error));
206
+ }
207
+ });
208
+ } catch (error) {
209
+ fail2(openError(error));
210
+ }
211
+ };
212
+ var adopt = (socket, options, events) => Effect.callback((resume) => {
213
+ const native = new NativeSocket(socket, events);
214
+ const fail2 = (error) => {
215
+ native.close();
216
+ resume(Effect.fail(error));
217
+ };
218
+ let family;
219
+ let remote;
220
+ try {
221
+ family = socket.address().family === "IPv6" ? "ipv6" : "ipv4";
222
+ } catch (error) {
223
+ return fail2(openError(error));
224
+ }
225
+ try {
226
+ remote = socket.remoteAddress();
227
+ } catch {
228
+ }
229
+ const scopeIds = scopeIdsFor(family);
230
+ if (remote !== void 0) {
231
+ return resume(Effect.succeed(native.open(scopeIds, {
232
+ host: remote.address,
233
+ port: remote.port
234
+ }, true)));
235
+ }
236
+ resolvePeer(options.peer, family, scopeIds, (error) => fail2(openError(error, "AddressNotAvailable")), (peer) => resume(Effect.succeed(native.open(scopeIds, peer, false))));
237
+ });
238
+ var NativeSocket = class {
239
+ socket;
240
+ onOpenError = void 0;
241
+ closing = false;
242
+ constructor(socket, events) {
243
+ this.socket = socket;
244
+ socket.on("message", (payload, info) => events.onPacket(payload, info.address, info.port));
245
+ socket.on("error", (error) => {
246
+ if (this.onOpenError !== void 0) return this.onOpenError(error);
247
+ events.onError(readError(error));
248
+ });
249
+ socket.on("close", () => {
250
+ if (!this.closing) events.onClose();
251
+ });
252
+ }
253
+ open(scopeIds, peer, connected) {
254
+ this.onOpenError = void 0;
255
+ const socket = this.socket;
256
+ const bound = socket.address();
257
+ const send = (payload, destination, done) => {
258
+ try {
259
+ if (destination === void 0) socket.send(payload, done);
260
+ else socket.send(payload, destination.port, destination.host, done);
261
+ } catch (error) {
262
+ done(error);
263
+ }
264
+ };
265
+ return {
266
+ address: {
267
+ host: bound.address,
268
+ port: bound.port
269
+ },
270
+ scopeIds,
271
+ peer,
272
+ connected,
273
+ send: (payload, destination, done) => send(payload, destination, (error) => done(error == null ? void 0 : writeError(error))),
274
+ sendMany: (payloads, destinations, done) => {
275
+ let remaining = payloads.length;
276
+ let failure;
277
+ let failedAt;
278
+ const report = (error, index) => {
279
+ if (error != null && failure === void 0) {
280
+ failure = writeError(error);
281
+ failedAt = index;
282
+ }
283
+ if (--remaining === 0) done(failure, failedAt);
284
+ };
285
+ for (let i = 0; i < payloads.length; i++) {
286
+ send(payloads[i], destinations[i], (error) => report(error, i));
287
+ }
288
+ },
289
+ joinMulticast: ({
290
+ group,
291
+ interface: ingress,
292
+ source
293
+ }) => Effect.try({
294
+ try: () => {
295
+ const groupHost = NetAddress.formatIp(group);
296
+ const interfaceHost = ingress === void 0 ? void 0 : NetAddress.formatMulticastInterface(ingress, scopeIds);
297
+ if (source === void 0) {
298
+ socket.addMembership(groupHost, interfaceHost);
299
+ return () => Effect.sync(() => socket.dropMembership(groupHost, interfaceHost));
300
+ }
301
+ const sourceHost = NetAddress.formatIp(source);
302
+ socket.addSourceSpecificMembership(sourceHost, groupHost, interfaceHost);
303
+ return () => Effect.sync(() => socket.dropSourceSpecificMembership(sourceHost, groupHost, interfaceHost));
304
+ },
305
+ catch: (error) => openError(error)
306
+ }),
307
+ close: () => this.close()
308
+ };
309
+ }
310
+ close() {
311
+ if (this.closing) return;
312
+ this.closing = true;
313
+ try {
314
+ this.socket.close();
315
+ } catch {
316
+ }
317
+ }
318
+ };
319
+
320
+ export {
321
+ make,
322
+ fromSocket,
323
+ layer,
324
+ NodeDatagramSocket_exports
325
+ };
@@ -0,0 +1,229 @@
1
+ import {
2
+ NetSocket,
3
+ NodeWS,
4
+ fromDuplex
5
+ } from "./chunk-Q7YXUH7M.js";
6
+ import {
7
+ __export
8
+ } from "./chunk-MLKGABMK.js";
9
+
10
+ // ../../../../node_modules/.pnpm/@effect+platform-node-shared@4.0.5_effect@4.0.5/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js
11
+ var NodeSocketServer_exports = {};
12
+ __export(NodeSocketServer_exports, {
13
+ IncomingMessage: () => IncomingMessage,
14
+ layer: () => layer,
15
+ layerTls: () => layerTls,
16
+ layerWebSocket: () => layerWebSocket,
17
+ make: () => make2,
18
+ makeTls: () => makeTls,
19
+ makeWebSocket: () => makeWebSocket
20
+ });
21
+ import * as Context from "effect/Context";
22
+ import * as Deferred from "effect/Deferred";
23
+ import * as Effect from "effect/Effect";
24
+ import * as Exit from "effect/Exit";
25
+ import * as Fiber from "effect/Fiber";
26
+ import { pipe } from "effect/Function";
27
+ import * as Function from "effect/Function";
28
+ import * as Layer from "effect/Layer";
29
+ import * as NetAddress from "effect/net/NetAddress";
30
+ import * as References from "effect/References";
31
+ import * as Scope from "effect/Scope";
32
+ import * as Socket from "effect/socket/Socket";
33
+ import * as SocketServer from "effect/socket/SocketServer";
34
+ import * as Net from "node:net";
35
+ import * as Tls from "node:tls";
36
+ var isDeno = "Deno" in globalThis;
37
+ var socketAddressFromNode = (address) => typeof address === "string" ? Effect.succeed(NetAddress.unixPathAddress(address)) : Effect.fromResult(NetAddress.inetAddressFromIpString(address.address, address.port)).pipe(Effect.mapError((cause) => new SocketServer.SocketServerError({
38
+ reason: new SocketServer.SocketServerOpenError({
39
+ cause
40
+ })
41
+ })));
42
+ var IncomingMessage = class extends (/* @__PURE__ */ Context.Service()("@effect/platform-node-shared/NodeSocketServer/IncomingMessage")) {
43
+ };
44
+ var make2 = (options) => makeNetServer({
45
+ listenOptions: options,
46
+ connectionEvent: "connection",
47
+ createServer: () => Net.createServer(options)
48
+ });
49
+ var layer = /* @__PURE__ */ Function.flow(make2, /* @__PURE__ */ Layer.effect(SocketServer.SocketServer));
50
+ var makeTls = (options) => makeNetServer({
51
+ listenOptions: options,
52
+ connectionEvent: "secureConnection",
53
+ createServer: () => {
54
+ const server = Tls.createServer(options);
55
+ server.on("tlsClientError", (_error, socket) => {
56
+ socket.destroy();
57
+ });
58
+ return server;
59
+ }
60
+ });
61
+ var layerTls = /* @__PURE__ */ Function.flow(makeTls, /* @__PURE__ */ Layer.effect(SocketServer.SocketServer));
62
+ var makeWebSocket = /* @__PURE__ */ Effect.fnUntraced(function* (options) {
63
+ const pendingConnections = /* @__PURE__ */ new Map();
64
+ const server = yield* Effect.acquireRelease(Effect.sync(() => new NodeWS.WebSocketServer(options)), (server2) => Effect.callback((resume) => {
65
+ pendingConnections.forEach(([, remove], conn) => {
66
+ remove();
67
+ conn.terminate();
68
+ });
69
+ server2.close(() => resume(Effect.void));
70
+ }));
71
+ function defaultHandler(conn, req) {
72
+ const remove = () => {
73
+ pendingConnections.delete(conn);
74
+ conn.removeEventListener("close", remove);
75
+ };
76
+ pendingConnections.set(conn, [req, remove]);
77
+ conn.addEventListener("close", remove);
78
+ }
79
+ let onConnection = defaultHandler;
80
+ server.on("connection", (conn, req) => {
81
+ conn.pause();
82
+ onConnection(conn, req);
83
+ });
84
+ yield* Effect.callback((resume) => {
85
+ server.once("error", (error) => {
86
+ resume(Effect.fail(new SocketServer.SocketServerError({
87
+ reason: new SocketServer.SocketServerOpenError({
88
+ cause: error
89
+ })
90
+ })));
91
+ });
92
+ server.once("listening", () => {
93
+ resume(Effect.void);
94
+ });
95
+ });
96
+ const run = Effect.fnUntraced(function* (handler) {
97
+ const scope = yield* Scope.make();
98
+ const services = Context.omit(Scope.Scope)(yield* Effect.context());
99
+ const trackFiber = Fiber.runIn(scope);
100
+ const prevOnConnection = onConnection;
101
+ onConnection = function(conn, req) {
102
+ let context2 = services;
103
+ context2 = Context.add(context2, IncomingMessage, req);
104
+ context2 = Context.add(context2, Socket.WebSocket, conn);
105
+ pipe(Socket.fromWebSocket(Effect.acquireRelease(Effect.succeed(conn), (conn2) => Effect.sync(() => {
106
+ conn2.close();
107
+ }))), Effect.flatMap(handler), Effect.catchCause(reportUnhandledError), Effect.runForkWith(context2), trackFiber);
108
+ };
109
+ pendingConnections.forEach(([req, remove], conn) => {
110
+ remove();
111
+ onConnection(conn, req);
112
+ });
113
+ return yield* Effect.callback((_resume) => {
114
+ return Effect.sync(() => {
115
+ onConnection = prevOnConnection;
116
+ });
117
+ }).pipe(Effect.ensuring(Scope.close(scope, Exit.void)));
118
+ });
119
+ const boundAddress = yield* socketAddressFromNode(server.address());
120
+ return SocketServer.SocketServer.of({
121
+ address: boundAddress,
122
+ run
123
+ });
124
+ });
125
+ var layerWebSocket = /* @__PURE__ */ Function.flow(makeWebSocket, /* @__PURE__ */ Layer.effect(SocketServer.SocketServer));
126
+ var reportUnhandledError = (cause) => Effect.withFiber((fiber) => {
127
+ const unhandledLogLevel = fiber.getRef(References.UnhandledLogLevel);
128
+ if (unhandledLogLevel) {
129
+ return Effect.logWithLevel(unhandledLogLevel)(cause, "Unhandled error in SocketServer");
130
+ }
131
+ return Effect.void;
132
+ });
133
+ var makeNetServer = /* @__PURE__ */ Effect.fnUntraced(function* (options) {
134
+ const errorDeferred = Deferred.makeUnsafe();
135
+ const pending = /* @__PURE__ */ new Map();
136
+ function defaultOnConnection(conn) {
137
+ const remove = () => {
138
+ pending.delete(conn);
139
+ conn.off("close", remove);
140
+ conn.off("error", remove);
141
+ };
142
+ pending.set(conn, remove);
143
+ conn.on("close", remove);
144
+ conn.on("error", remove);
145
+ }
146
+ let onConnection = defaultOnConnection;
147
+ let server;
148
+ yield* Effect.addFinalizer(() => Effect.callback((resume) => {
149
+ pending.forEach((remove, conn) => {
150
+ remove();
151
+ conn.destroy();
152
+ });
153
+ server?.close(() => resume(Effect.void));
154
+ }));
155
+ server = options.createServer();
156
+ server.on(options.connectionEvent, (conn) => {
157
+ if (!isDeno) conn.pause();
158
+ onConnection(conn);
159
+ });
160
+ server.on("error", (err) => Deferred.doneUnsafe(errorDeferred, Exit.fail(err)));
161
+ yield* Effect.callback((resume) => {
162
+ server.listen(options.listenOptions, () => resume(Effect.void));
163
+ }).pipe(Effect.raceFirst(Effect.mapError(Deferred.await(errorDeferred), (err) => new SocketServer.SocketServerError({
164
+ reason: new SocketServer.SocketServerOpenError({
165
+ cause: err
166
+ })
167
+ }))));
168
+ const run = Effect.fnUntraced(function* (handler) {
169
+ const scope = yield* Scope.make();
170
+ const services = Context.omit(Scope.Scope)(yield* Effect.context());
171
+ const trackFiber = Fiber.runIn(scope);
172
+ const prevOnConnection = onConnection;
173
+ onConnection = function(conn) {
174
+ let error;
175
+ conn.on("error", (err) => {
176
+ error = err;
177
+ });
178
+ pipe(fromDuplex(Effect.acquireRelease(Effect.suspend(() => {
179
+ if (error) {
180
+ return Effect.fail(new Socket.SocketError({
181
+ reason: new Socket.SocketOpenError({
182
+ kind: "Unknown",
183
+ cause: error
184
+ })
185
+ }));
186
+ } else if (conn.closed) {
187
+ return Effect.fail(new Socket.SocketError({
188
+ reason: new Socket.SocketCloseError({
189
+ code: 1e3
190
+ })
191
+ }));
192
+ }
193
+ return Effect.succeed(conn);
194
+ }), (conn2) => Effect.sync(() => {
195
+ if (conn2.closed === false) {
196
+ conn2.destroySoon();
197
+ }
198
+ })), {
199
+ tlsServer: true
200
+ }), Effect.flatMap(handler), Effect.catchCause(reportUnhandledError), Effect.runForkWith(Context.add(services, NetSocket, conn)), trackFiber);
201
+ };
202
+ pending.forEach((remove, conn) => {
203
+ remove();
204
+ onConnection(conn);
205
+ });
206
+ return yield* Effect.callback((_resume) => {
207
+ return Effect.suspend(() => {
208
+ onConnection = prevOnConnection;
209
+ return Scope.close(scope, Exit.void);
210
+ });
211
+ });
212
+ });
213
+ const boundAddress = yield* socketAddressFromNode(server.address());
214
+ return SocketServer.SocketServer.of({
215
+ address: boundAddress,
216
+ run
217
+ });
218
+ });
219
+
220
+ export {
221
+ IncomingMessage,
222
+ make2 as make,
223
+ layer,
224
+ makeTls,
225
+ layerTls,
226
+ makeWebSocket,
227
+ layerWebSocket,
228
+ NodeSocketServer_exports
229
+ };