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

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-2ZAGBWTH.js +40 -0
  84. package/dist/vendor/chunk-3SL3HKQA.js +118 -0
  85. package/dist/vendor/chunk-3WUGYBFU.js +0 -0
  86. package/dist/vendor/chunk-4WIQ2XN7.js +28 -0
  87. package/dist/vendor/chunk-5ET7NHI7.js +15 -0
  88. package/dist/vendor/chunk-6FSJ2PMW.js +53 -0
  89. package/dist/vendor/chunk-6L2NJEOV.js +62 -0
  90. package/dist/vendor/chunk-72X6VEVD.js +62 -0
  91. package/dist/vendor/chunk-7NMJM44J.js +26 -0
  92. package/dist/vendor/chunk-A7AY2JP7.js +71 -0
  93. package/dist/vendor/chunk-A7UXCEJA.js +81 -0
  94. package/dist/vendor/chunk-ADP5LRUF.js +274 -0
  95. package/dist/vendor/chunk-ASGOJ3XA.js +0 -0
  96. package/dist/vendor/chunk-AWNTTSHL.js +34 -0
  97. package/dist/vendor/chunk-BUKVIAEM.js +20 -0
  98. package/dist/vendor/chunk-BY3SDXID.js +501 -0
  99. package/dist/vendor/chunk-C3PGUWW5.js +414 -0
  100. package/dist/vendor/chunk-CL4EIDIY.js +7 -0
  101. package/dist/vendor/chunk-D2ZL4PLZ.js +93 -0
  102. package/dist/vendor/chunk-D4HEMNGU.js +22 -0
  103. package/dist/vendor/chunk-F4V5TRY7.js +85 -0
  104. package/dist/vendor/chunk-F772LLZ5.js +31 -0
  105. package/dist/vendor/chunk-FFD6R5JZ.js +104 -0
  106. package/dist/vendor/chunk-G4HOH7GK.js +65 -0
  107. package/dist/vendor/chunk-GJN7MEBF.js +18 -0
  108. package/dist/vendor/chunk-HDV6VIRM.js +48 -0
  109. package/dist/vendor/chunk-IHV7Z4SW.js +34 -0
  110. package/dist/vendor/chunk-IWSDM4CG.js +16 -0
  111. package/dist/vendor/chunk-JOQDB2HC.js +26 -0
  112. package/dist/vendor/chunk-KABHKTVG.js +18 -0
  113. package/dist/vendor/chunk-KFDBU6RR.js +60 -0
  114. package/dist/vendor/chunk-KHPN5DWT.js +20 -0
  115. package/dist/vendor/chunk-LNWGIDIG.js +20 -0
  116. package/dist/vendor/chunk-MLKGABMK.js +9 -0
  117. package/dist/vendor/chunk-MUEED3C3.js +144 -0
  118. package/dist/vendor/chunk-N6TK35N5.js +18 -0
  119. package/dist/vendor/chunk-NQO6V4KI.js +580 -0
  120. package/dist/vendor/chunk-NUJQMLJP.js +325 -0
  121. package/dist/vendor/chunk-OF3N2FN4.js +61 -0
  122. package/dist/vendor/chunk-OGZJACUS.js +57 -0
  123. package/dist/vendor/chunk-PCEVZYXO.js +63 -0
  124. package/dist/vendor/chunk-PECOFLCU.js +85 -0
  125. package/dist/vendor/chunk-PU7QVYND.js +18 -0
  126. package/dist/vendor/chunk-QGPZPULA.js +51 -0
  127. package/dist/vendor/chunk-QHR2RC5M.js +109 -0
  128. package/dist/vendor/chunk-R2YON4A6.js +28 -0
  129. package/dist/vendor/chunk-R327POEZ.js +18 -0
  130. package/dist/vendor/chunk-REFJNBQR.js +18 -0
  131. package/dist/vendor/chunk-RHJ6LV32.js +43 -0
  132. package/dist/vendor/chunk-RKVXYKHJ.js +29 -0
  133. package/dist/vendor/chunk-RP3EWS4C.js +0 -0
  134. package/dist/vendor/chunk-RQH5DSBA.js +249 -0
  135. package/dist/vendor/chunk-RQQ5TSCD.js +374 -0
  136. package/dist/vendor/chunk-S6QUQLBV.js +229 -0
  137. package/dist/vendor/chunk-SCXQLSNW.js +34 -0
  138. package/dist/vendor/chunk-SD4X5NGU.js +515 -0
  139. package/dist/vendor/chunk-T332WJRS.js +128 -0
  140. package/dist/vendor/chunk-T5FQGISI.js +18 -0
  141. package/dist/vendor/chunk-TBPDCAMH.js +70 -0
  142. package/dist/vendor/chunk-UFWLKG4I.js +16 -0
  143. package/dist/vendor/chunk-UPIQ52FQ.js +426 -0
  144. package/dist/vendor/chunk-UUQXJRMK.js +14 -0
  145. package/dist/vendor/chunk-UUYTTEDH.js +36 -0
  146. package/dist/vendor/chunk-V2EB7FHY.js +129 -0
  147. package/dist/vendor/chunk-VIWU4EBF.js +18 -0
  148. package/dist/vendor/chunk-WPZDL2D7.js +21 -0
  149. package/dist/vendor/chunk-X4YPHWAE.js +22 -0
  150. package/dist/vendor/chunk-XACFQJY7.js +93 -0
  151. package/dist/vendor/chunk-Y7V6ISZS.js +418 -0
  152. package/dist/vendor/chunk-YDY5P7GL.js +20 -0
  153. package/dist/vendor/chunk-ZNKZXDUD.js +18 -0
  154. package/dist/vendor/chunk-ZS3VW5QR.js +63 -0
  155. package/dist/vendor/chunk-ZUUCLHBP.js +18 -0
  156. package/dist/vendor/chunk-ZVJCBTJG.js +131 -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 +198 -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 +198 -0
  330. package/dist/vendor/node/NodeHttpClient.js +46 -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,20 @@
1
+ import {
2
+ fromWritable,
3
+ fromWritableChannel,
4
+ pullIntoWritable
5
+ } from "./chunk-A7UXCEJA.js";
6
+ import {
7
+ __export
8
+ } from "./chunk-MLKGABMK.js";
9
+
10
+ // ../../../../node_modules/.pnpm/@effect+platform-node@4.0.4_effect@4.0.4_redis@6.2.1_@opentelemetry+api@1.9.1_/node_modules/@effect/platform-node/dist/NodeSink.js
11
+ var NodeSink_exports = {};
12
+ __export(NodeSink_exports, {
13
+ fromWritable: () => fromWritable,
14
+ fromWritableChannel: () => fromWritableChannel,
15
+ pullIntoWritable: () => pullIntoWritable
16
+ });
17
+
18
+ export {
19
+ NodeSink_exports
20
+ };
@@ -0,0 +1,501 @@
1
+ import {
2
+ handleErrnoException
3
+ } from "./chunk-2ZAGBWTH.js";
4
+ import {
5
+ __export
6
+ } from "./chunk-MLKGABMK.js";
7
+
8
+ // ../../../../node_modules/.pnpm/@effect+platform-node-shared@4.0.4_effect@4.0.4/node_modules/@effect/platform-node-shared/dist/NodeFileSystem.js
9
+ var NodeFileSystem_exports = {};
10
+ __export(NodeFileSystem_exports, {
11
+ layer: () => layer
12
+ });
13
+ import * as BI from "effect/BigInt";
14
+ import * as ByteSize from "effect/ByteSize";
15
+ import * as Cause from "effect/Cause";
16
+ import * as Effect from "effect/Effect";
17
+ import { effectify } from "effect/Effect";
18
+ import * as FileSystem from "effect/FileSystem";
19
+ import { pipe } from "effect/Function";
20
+ import * as Layer from "effect/Layer";
21
+ import * as Option from "effect/Option";
22
+ import * as Error from "effect/PlatformError";
23
+ import * as Queue from "effect/Queue";
24
+ import * as Stream from "effect/Stream";
25
+ import * as Crypto from "node:crypto";
26
+ import * as NFS from "node:fs";
27
+ import * as OS from "node:os";
28
+ import * as Path from "node:path";
29
+ var handleBadArgument = (method) => (err) => Error.badArgument({
30
+ module: "FileSystem",
31
+ method,
32
+ description: err.message ?? String(err)
33
+ });
34
+ var bigintToNumber = (value, field) => {
35
+ const number = Number(value);
36
+ if (!Number.isSafeInteger(number)) {
37
+ throw new RangeError(`${field} exceeds the safe integer range: ${value}`);
38
+ }
39
+ return number;
40
+ };
41
+ var bigintToNumberOption = (value) => Option.flatMap(Option.fromNullishOr(value), BI.toNumber);
42
+ var positionToNumber = (position, method) => Effect.try({
43
+ try: () => bigintToNumber(position, "position"),
44
+ catch: handleBadArgument(method)
45
+ });
46
+ var access2 = /* @__PURE__ */ (() => {
47
+ const nodeAccess = /* @__PURE__ */ effectify(NFS.access, /* @__PURE__ */ handleErrnoException("FileSystem", "access"), /* @__PURE__ */ handleBadArgument("access"));
48
+ return (path, options) => {
49
+ let mode = NFS.constants.F_OK;
50
+ if (options?.readable) {
51
+ mode |= NFS.constants.R_OK;
52
+ }
53
+ if (options?.writable) {
54
+ mode |= NFS.constants.W_OK;
55
+ }
56
+ return nodeAccess(path, mode);
57
+ };
58
+ })();
59
+ var copy = /* @__PURE__ */ (() => {
60
+ const nodeCp = /* @__PURE__ */ effectify(NFS.cp, /* @__PURE__ */ handleErrnoException("FileSystem", "copy"), /* @__PURE__ */ handleBadArgument("copy"));
61
+ return (fromPath, toPath, options) => nodeCp(fromPath, toPath, {
62
+ force: options?.overwrite ?? false,
63
+ preserveTimestamps: options?.preserveTimestamps ?? false,
64
+ recursive: true
65
+ });
66
+ })();
67
+ var copyFile2 = /* @__PURE__ */ (() => {
68
+ const nodeCopyFile = /* @__PURE__ */ effectify(NFS.copyFile, /* @__PURE__ */ handleErrnoException("FileSystem", "copyFile"), /* @__PURE__ */ handleBadArgument("copyFile"));
69
+ return (fromPath, toPath) => nodeCopyFile(fromPath, toPath);
70
+ })();
71
+ var chmod2 = /* @__PURE__ */ (() => {
72
+ const nodeChmod = /* @__PURE__ */ effectify(NFS.chmod, /* @__PURE__ */ handleErrnoException("FileSystem", "chmod"), /* @__PURE__ */ handleBadArgument("chmod"));
73
+ return (path, mode) => nodeChmod(path, mode);
74
+ })();
75
+ var chown2 = /* @__PURE__ */ (() => {
76
+ const nodeChown = /* @__PURE__ */ effectify(NFS.chown, /* @__PURE__ */ handleErrnoException("FileSystem", "chown"), /* @__PURE__ */ handleBadArgument("chown"));
77
+ return (path, uid, gid) => nodeChown(path, uid, gid);
78
+ })();
79
+ var glob2 = /* @__PURE__ */ (() => {
80
+ const nodeGlob = /* @__PURE__ */ effectify(NFS.glob, /* @__PURE__ */ handleErrnoException("FileSystem", "glob"), /* @__PURE__ */ handleBadArgument("glob"));
81
+ return (pattern, options) => nodeGlob(pattern, {
82
+ cwd: options?.root,
83
+ exclude: options?.exclude
84
+ });
85
+ })();
86
+ var link2 = /* @__PURE__ */ (() => {
87
+ const nodeLink = /* @__PURE__ */ effectify(NFS.link, /* @__PURE__ */ handleErrnoException("FileSystem", "link"), /* @__PURE__ */ handleBadArgument("link"));
88
+ return (existingPath, newPath) => nodeLink(existingPath, newPath);
89
+ })();
90
+ var makeDirectory = /* @__PURE__ */ (() => {
91
+ const nodeMkdir = /* @__PURE__ */ effectify(NFS.mkdir, /* @__PURE__ */ handleErrnoException("FileSystem", "makeDirectory"), /* @__PURE__ */ handleBadArgument("makeDirectory"));
92
+ return (path, options) => nodeMkdir(path, {
93
+ recursive: options?.recursive ?? false,
94
+ mode: options?.mode
95
+ });
96
+ })();
97
+ var makeTempDirectoryFactory = (method) => {
98
+ const nodeMkdtemp = effectify(NFS.mkdtemp, handleErrnoException("FileSystem", method), handleBadArgument(method));
99
+ return (options) => Effect.suspend(() => {
100
+ const prefix = options?.prefix ?? "";
101
+ const directory = typeof options?.directory === "string" ? Path.join(options.directory, ".") : OS.tmpdir();
102
+ return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory + "/");
103
+ });
104
+ };
105
+ var makeTempDirectory = /* @__PURE__ */ makeTempDirectoryFactory("makeTempDirectory");
106
+ var removeFactory = (method) => {
107
+ const nodeRm = effectify(NFS.rm, handleErrnoException("FileSystem", method), handleBadArgument(method));
108
+ return (path, options) => nodeRm(path, {
109
+ recursive: options?.recursive ?? false,
110
+ force: options?.force ?? false
111
+ });
112
+ };
113
+ var remove = /* @__PURE__ */ removeFactory("remove");
114
+ var makeTempDirectoryScoped = /* @__PURE__ */ (() => {
115
+ const makeDirectory2 = /* @__PURE__ */ makeTempDirectoryFactory("makeTempDirectoryScoped");
116
+ const removeDirectory = /* @__PURE__ */ removeFactory("makeTempDirectoryScoped");
117
+ return (options) => Effect.acquireRelease(makeDirectory2(options), (directory) => Effect.orDie(removeDirectory(directory, {
118
+ recursive: true
119
+ })));
120
+ })();
121
+ var openFlagBits = (flag) => {
122
+ const {
123
+ O_APPEND,
124
+ O_CREAT,
125
+ O_EXCL,
126
+ O_RDONLY,
127
+ O_RDWR,
128
+ O_TRUNC,
129
+ O_WRONLY
130
+ } = NFS.constants;
131
+ switch (flag) {
132
+ case "r":
133
+ return O_RDONLY;
134
+ case "r+":
135
+ return O_RDWR;
136
+ case "w":
137
+ return O_TRUNC | O_CREAT | O_WRONLY;
138
+ case "wx":
139
+ return O_TRUNC | O_CREAT | O_WRONLY | O_EXCL;
140
+ case "w+":
141
+ return O_TRUNC | O_CREAT | O_RDWR;
142
+ case "wx+":
143
+ return O_TRUNC | O_CREAT | O_RDWR | O_EXCL;
144
+ case "a":
145
+ return O_APPEND | O_CREAT | O_WRONLY;
146
+ case "ax":
147
+ return O_APPEND | O_CREAT | O_WRONLY | O_EXCL;
148
+ case "a+":
149
+ return O_APPEND | O_CREAT | O_RDWR;
150
+ case "ax+":
151
+ return O_APPEND | O_CREAT | O_RDWR | O_EXCL;
152
+ }
153
+ };
154
+ var noFollowFlags = (method, flag) => Effect.suspend(() => {
155
+ const {
156
+ O_NOFOLLOW
157
+ } = NFS.constants;
158
+ if (process.platform === "win32" || typeof O_NOFOLLOW !== "number" || O_NOFOLLOW === 0) {
159
+ return Effect.fail(Error.badArgument({
160
+ module: "FileSystem",
161
+ method,
162
+ description: "noFollow is not supported on this platform"
163
+ }));
164
+ }
165
+ return Effect.succeed(openFlagBits(flag) | O_NOFOLLOW);
166
+ });
167
+ var openFactory = (method) => {
168
+ const nodeOpen = effectify(NFS.open, handleErrnoException("FileSystem", method), handleBadArgument(method));
169
+ const nodeClose = effectify(NFS.close, handleErrnoException("FileSystem", method), handleBadArgument(method));
170
+ return (path, options) => pipe(Effect.acquireRelease(options?.noFollow === true ? Effect.flatMap(noFollowFlags(method, options.flag ?? "r"), (flags) => nodeOpen(path, flags, options.mode)) : nodeOpen(path, options?.flag ?? "r", options?.mode), (fd) => Effect.orDie(nodeClose(fd))), Effect.map((fd) => makeFile(fd, options?.flag?.startsWith("a") ?? false)));
171
+ };
172
+ var open2 = /* @__PURE__ */ openFactory("open");
173
+ var negativePosition = (method) => Error.badArgument({
174
+ module: "FileSystem",
175
+ method,
176
+ description: "Cannot read before the start of the file"
177
+ });
178
+ var makeFile = /* @__PURE__ */ (() => {
179
+ const nodeReadFactory = (method) => effectify(NFS.read, handleErrnoException("FileSystem", method), handleBadArgument(method));
180
+ const nodeRead = /* @__PURE__ */ nodeReadFactory("read");
181
+ const nodeReadAlloc = /* @__PURE__ */ nodeReadFactory("readAlloc");
182
+ const nodeStat = /* @__PURE__ */ effectify(NFS.fstat, /* @__PURE__ */ handleErrnoException("FileSystem", "stat"), /* @__PURE__ */ handleBadArgument("stat"));
183
+ const nodeTruncate = /* @__PURE__ */ effectify(NFS.ftruncate, /* @__PURE__ */ handleErrnoException("FileSystem", "truncate"), /* @__PURE__ */ handleBadArgument("truncate"));
184
+ const nodeSync = /* @__PURE__ */ effectify(NFS.fsync, /* @__PURE__ */ handleErrnoException("FileSystem", "sync"), /* @__PURE__ */ handleBadArgument("sync"));
185
+ const nodeWriteFactory = (method) => effectify(NFS.write, handleErrnoException("FileSystem", method), handleBadArgument(method));
186
+ const nodeWrite = /* @__PURE__ */ nodeWriteFactory("write");
187
+ const nodeWriteAll = /* @__PURE__ */ nodeWriteFactory("writeAll");
188
+ class FileImpl {
189
+ [FileSystem.FileTypeId];
190
+ fd;
191
+ append;
192
+ position = /* @__PURE__ */ BigInt(0);
193
+ constructor(fd, append) {
194
+ this[FileSystem.FileTypeId] = FileSystem.FileTypeId;
195
+ this.fd = fd;
196
+ this.append = append;
197
+ }
198
+ get stat() {
199
+ return Effect.flatMap(nodeStat(this.fd, {
200
+ bigint: true
201
+ }), makeFileInfo);
202
+ }
203
+ get sync() {
204
+ return nodeSync(this.fd);
205
+ }
206
+ seek(offset, from) {
207
+ return Effect.suspend(() => {
208
+ const position = from === "start" ? offset : this.position + offset;
209
+ if (position < BigInt(0)) {
210
+ return Effect.fail(Error.badArgument({
211
+ module: "FileSystem",
212
+ method: "seek",
213
+ description: "Cannot seek before the start of the file"
214
+ }));
215
+ }
216
+ this.position = position;
217
+ return Effect.succeed(position);
218
+ });
219
+ }
220
+ read(buffer, options) {
221
+ return Effect.suspend(() => {
222
+ const explicit = options?.position;
223
+ if (explicit !== void 0) {
224
+ return explicit < BigInt(0) ? Effect.fail(negativePosition("read")) : nodeRead(this.fd, {
225
+ buffer,
226
+ position: explicit
227
+ });
228
+ }
229
+ const position = this.position;
230
+ return Effect.map(nodeRead(this.fd, {
231
+ buffer,
232
+ position
233
+ }), (bytesRead) => {
234
+ this.position = position + BigInt(bytesRead);
235
+ return bytesRead;
236
+ });
237
+ });
238
+ }
239
+ readAlloc(size, options) {
240
+ return Effect.suspend(() => {
241
+ try {
242
+ if (!Number.isInteger(size) || size < 0) {
243
+ throw new RangeError("size must be a non-negative integer");
244
+ }
245
+ const explicit = options?.position;
246
+ if (explicit !== void 0 && explicit < BigInt(0)) {
247
+ return Effect.fail(negativePosition("readAlloc"));
248
+ }
249
+ const buffer = Buffer.allocUnsafeSlow(size);
250
+ const position = explicit ?? this.position;
251
+ return Effect.map(nodeReadAlloc(this.fd, {
252
+ buffer,
253
+ position
254
+ }), (bytesRead) => {
255
+ if (bytesRead === 0) {
256
+ return Option.none();
257
+ }
258
+ if (explicit === void 0) {
259
+ this.position = position + BigInt(bytesRead);
260
+ }
261
+ if (bytesRead === size) {
262
+ return Option.some(buffer);
263
+ }
264
+ const dst = Buffer.allocUnsafeSlow(bytesRead);
265
+ buffer.copy(dst, 0, 0, bytesRead);
266
+ return Option.some(dst);
267
+ });
268
+ } catch (cause) {
269
+ return Effect.fail(handleBadArgument("readAlloc")(cause));
270
+ }
271
+ });
272
+ }
273
+ truncate(length) {
274
+ return Effect.map(nodeTruncate(this.fd, length || void 0), () => {
275
+ if (!this.append) {
276
+ const len = BigInt(length ?? 0);
277
+ if (this.position > len) {
278
+ this.position = len;
279
+ }
280
+ }
281
+ });
282
+ }
283
+ write(buffer) {
284
+ return Effect.suspend(() => {
285
+ const position = this.position;
286
+ return Effect.flatMap(this.append ? Effect.succeed(void 0) : positionToNumber(position, "write"), (nodePosition) => Effect.map(nodeWrite(this.fd, buffer, void 0, void 0, nodePosition), (bytesWritten) => {
287
+ if (!this.append) {
288
+ this.position = position + BigInt(bytesWritten);
289
+ }
290
+ return bytesWritten;
291
+ }));
292
+ });
293
+ }
294
+ writeAllChunk(buffer) {
295
+ return Effect.suspend(() => {
296
+ const position = this.position;
297
+ return Effect.flatMap(this.append ? Effect.succeed(void 0) : positionToNumber(position, "writeAll"), (nodePosition) => Effect.flatMap(nodeWriteAll(this.fd, buffer, void 0, void 0, nodePosition), (bytesWritten) => {
298
+ if (bytesWritten === 0) {
299
+ return Effect.fail(Error.systemError({
300
+ module: "FileSystem",
301
+ method: "writeAll",
302
+ _tag: "WriteZero",
303
+ pathOrDescriptor: this.fd,
304
+ description: "write returned 0 bytes written"
305
+ }));
306
+ }
307
+ if (!this.append) {
308
+ this.position = position + BigInt(bytesWritten);
309
+ }
310
+ return bytesWritten < buffer.length ? this.writeAllChunk(buffer.subarray(bytesWritten)) : Effect.void;
311
+ }));
312
+ });
313
+ }
314
+ writeAll(buffer) {
315
+ return buffer.length === 0 ? Effect.void : this.writeAllChunk(buffer);
316
+ }
317
+ }
318
+ return (fd, append) => new FileImpl(fd, append);
319
+ })();
320
+ var makeTempFileFactory = (method) => {
321
+ const makeDirectory2 = makeTempDirectoryFactory(method);
322
+ return Effect.fnUntraced(function* (options) {
323
+ const directory = yield* makeDirectory2(options);
324
+ const random = Crypto.randomBytes(6).toString("hex");
325
+ const name = Path.join(directory, options?.suffix ? `${random}${options.suffix}` : random);
326
+ yield* writeFile2(name, new Uint8Array(0));
327
+ return name;
328
+ });
329
+ };
330
+ var makeTempFile = /* @__PURE__ */ makeTempFileFactory("makeTempFile");
331
+ var makeTempFileScoped = /* @__PURE__ */ (() => {
332
+ const makeFile2 = /* @__PURE__ */ makeTempFileFactory("makeTempFileScoped");
333
+ const removeDirectory = /* @__PURE__ */ removeFactory("makeTempFileScoped");
334
+ return (options) => Effect.acquireRelease(makeFile2(options), (file) => Effect.orDie(removeDirectory(Path.dirname(file), {
335
+ recursive: true
336
+ })));
337
+ })();
338
+ var readDirectory = (path, options) => Effect.tryPromise({
339
+ try: () => NFS.promises.readdir(path, options),
340
+ catch: (err) => handleErrnoException("FileSystem", "readDirectory")(err, [path])
341
+ });
342
+ var readFile2 = (path) => Effect.callback((resume, signal) => {
343
+ try {
344
+ NFS.readFile(path, {
345
+ signal
346
+ }, (err, data) => {
347
+ if (err) {
348
+ resume(Effect.fail(handleErrnoException("FileSystem", "readFile")(err, [path])));
349
+ } else {
350
+ resume(Effect.succeed(data));
351
+ }
352
+ });
353
+ } catch (err) {
354
+ resume(Effect.fail(handleBadArgument("readFile")(err)));
355
+ }
356
+ });
357
+ var readLink = /* @__PURE__ */ (() => {
358
+ const nodeReadLink = /* @__PURE__ */ effectify(NFS.readlink, /* @__PURE__ */ handleErrnoException("FileSystem", "readLink"), /* @__PURE__ */ handleBadArgument("readLink"));
359
+ return (path) => nodeReadLink(path);
360
+ })();
361
+ var realPath = /* @__PURE__ */ (() => {
362
+ const nodeRealPath = /* @__PURE__ */ effectify(NFS.realpath, /* @__PURE__ */ handleErrnoException("FileSystem", "realPath"), /* @__PURE__ */ handleBadArgument("realPath"));
363
+ return (path) => nodeRealPath(path);
364
+ })();
365
+ var rename2 = /* @__PURE__ */ (() => {
366
+ const nodeRename = /* @__PURE__ */ effectify(NFS.rename, /* @__PURE__ */ handleErrnoException("FileSystem", "rename"), /* @__PURE__ */ handleBadArgument("rename"));
367
+ return (oldPath, newPath) => nodeRename(oldPath, newPath);
368
+ })();
369
+ var makeFileInfo = (stat3) => Effect.try({
370
+ try: () => ({
371
+ type: stat3.isFile() ? "File" : stat3.isDirectory() ? "Directory" : stat3.isSymbolicLink() ? "SymbolicLink" : stat3.isBlockDevice() ? "BlockDevice" : stat3.isCharacterDevice() ? "CharacterDevice" : stat3.isFIFO() ? "FIFO" : stat3.isSocket() ? "Socket" : "Unknown",
372
+ mtime: Option.fromNullishOr(stat3.mtime),
373
+ atime: Option.fromNullishOr(stat3.atime),
374
+ birthtime: Option.fromNullishOr(stat3.birthtime),
375
+ dev: bigintToNumber(stat3.dev, "dev"),
376
+ rdev: bigintToNumberOption(stat3.rdev),
377
+ ino: bigintToNumberOption(stat3.ino),
378
+ mode: bigintToNumber(stat3.mode, "mode"),
379
+ nlink: bigintToNumberOption(stat3.nlink),
380
+ uid: bigintToNumberOption(stat3.uid),
381
+ gid: bigintToNumberOption(stat3.gid),
382
+ size: ByteSize.bytes(stat3.size),
383
+ blksize: stat3.blksize !== void 0 ? Option.some(ByteSize.bytes(stat3.blksize)) : Option.none(),
384
+ blocks: bigintToNumberOption(stat3.blocks)
385
+ }),
386
+ catch: handleBadArgument("stat")
387
+ });
388
+ var stat2 = /* @__PURE__ */ (() => {
389
+ const nodeStat = /* @__PURE__ */ effectify(NFS.stat, /* @__PURE__ */ handleErrnoException("FileSystem", "stat"), /* @__PURE__ */ handleBadArgument("stat"));
390
+ return (path) => Effect.flatMap(nodeStat(path, {
391
+ bigint: true
392
+ }), makeFileInfo);
393
+ })();
394
+ var symlink2 = /* @__PURE__ */ (() => {
395
+ const nodeSymlink = /* @__PURE__ */ effectify(NFS.symlink, /* @__PURE__ */ handleErrnoException("FileSystem", "symlink"), /* @__PURE__ */ handleBadArgument("symlink"));
396
+ return (target, path) => nodeSymlink(target, path);
397
+ })();
398
+ var truncate2 = /* @__PURE__ */ (() => {
399
+ const nodeTruncate = /* @__PURE__ */ effectify(NFS.truncate, /* @__PURE__ */ handleErrnoException("FileSystem", "truncate"), /* @__PURE__ */ handleBadArgument("truncate"));
400
+ return (path, length) => nodeTruncate(path, length);
401
+ })();
402
+ var utimes2 = /* @__PURE__ */ (() => {
403
+ const nodeUtimes = /* @__PURE__ */ effectify(NFS.utimes, /* @__PURE__ */ handleErrnoException("FileSystem", "utime"), /* @__PURE__ */ handleBadArgument("utime"));
404
+ return (path, atime, mtime) => nodeUtimes(path, atime, mtime);
405
+ })();
406
+ var watchNode = (path, info, options) => Stream.callback((queue) => Effect.acquireRelease(Effect.sync(() => {
407
+ const directory = info.type === "Directory" ? path : Path.dirname(path);
408
+ const watcher = NFS.watch(path, {
409
+ recursive: options?.recursive ?? false
410
+ }, (event, path2) => {
411
+ if (!path2) return;
412
+ switch (event) {
413
+ case "rename": {
414
+ Effect.runFork(Effect.matchEffect(stat2(Path.resolve(directory, path2)), {
415
+ onSuccess: (_) => Queue.offer(queue, {
416
+ _tag: "Create",
417
+ path: path2
418
+ }),
419
+ onFailure: (_) => Queue.offer(queue, {
420
+ _tag: "Remove",
421
+ path: path2
422
+ })
423
+ }));
424
+ return;
425
+ }
426
+ case "change": {
427
+ Queue.offerUnsafe(queue, {
428
+ _tag: "Update",
429
+ path: path2
430
+ });
431
+ return;
432
+ }
433
+ }
434
+ });
435
+ watcher.on("error", (error) => {
436
+ Queue.failCauseUnsafe(queue, Cause.fail(Error.systemError({
437
+ module: "FileSystem",
438
+ _tag: "Unknown",
439
+ method: "watch",
440
+ pathOrDescriptor: path,
441
+ cause: error
442
+ })));
443
+ });
444
+ watcher.on("close", () => {
445
+ Queue.endUnsafe(queue);
446
+ });
447
+ return watcher;
448
+ }), (watcher) => Effect.sync(() => watcher.close())));
449
+ var watch2 = (backend, path, options) => stat2(path).pipe(Effect.map((stat3) => backend.pipe(Option.flatMap((_) => _.register(path, stat3, options)), Option.getOrElse(() => watchNode(path, stat3, options)))), Stream.unwrap);
450
+ var writeFile2 = (path, data, options) => Effect.callback((resume, signal) => {
451
+ try {
452
+ NFS.writeFile(path, data, {
453
+ signal,
454
+ flag: options?.flag,
455
+ mode: options?.mode
456
+ }, (err) => {
457
+ if (err) {
458
+ resume(Effect.fail(handleErrnoException("FileSystem", "writeFile")(err, [path])));
459
+ } else {
460
+ resume(Effect.void);
461
+ }
462
+ });
463
+ } catch (err) {
464
+ resume(Effect.fail(handleBadArgument("writeFile")(err)));
465
+ }
466
+ });
467
+ var makeFileSystem = /* @__PURE__ */ Effect.map(/* @__PURE__ */ Effect.serviceOption(FileSystem.WatchBackend), (backend) => FileSystem.make({
468
+ access: access2,
469
+ chmod: chmod2,
470
+ chown: chown2,
471
+ copy,
472
+ copyFile: copyFile2,
473
+ glob: glob2,
474
+ link: link2,
475
+ makeDirectory,
476
+ makeTempDirectory,
477
+ makeTempDirectoryScoped,
478
+ makeTempFile,
479
+ makeTempFileScoped,
480
+ open: open2,
481
+ readDirectory,
482
+ readFile: readFile2,
483
+ readLink,
484
+ realPath,
485
+ remove,
486
+ rename: rename2,
487
+ stat: stat2,
488
+ symlink: symlink2,
489
+ truncate: truncate2,
490
+ utimes: utimes2,
491
+ watch(path, options) {
492
+ return watch2(backend, path, options);
493
+ },
494
+ writeFile: writeFile2
495
+ }));
496
+ var layer = /* @__PURE__ */ Layer.effect(FileSystem.FileSystem)(makeFileSystem);
497
+
498
+ export {
499
+ layer,
500
+ NodeFileSystem_exports
501
+ };