@smthrs/platform-node 0.0.0-stage → 1.0.0-rc.4

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 (442) hide show
  1. package/CHANGELOG.md +211 -0
  2. package/LICENSE +21 -0
  3. package/README.md +165 -2
  4. package/bin/darwin-arm64/smithers-jj-export +0 -0
  5. package/bin/darwin-x64/smithers-jj-export +0 -0
  6. package/bin/linux-arm64/smithers-jj-export +0 -0
  7. package/bin/linux-x64/smithers-jj-export +4 -0
  8. package/bin/win32-x64/smithers-jj-export.exe +0 -0
  9. package/dist/cjs/AtomicFileSystem.d.ts +147 -0
  10. package/dist/cjs/AtomicFileSystem.d.ts.map +1 -0
  11. package/dist/cjs/AtomicFileSystem.js +234 -0
  12. package/dist/cjs/AtomicFileSystem.js.map +7 -0
  13. package/dist/cjs/EgressHttpClient.d.ts +106 -0
  14. package/dist/cjs/EgressHttpClient.d.ts.map +1 -0
  15. package/dist/cjs/EgressHttpClient.js +202 -0
  16. package/dist/cjs/EgressHttpClient.js.map +7 -0
  17. package/dist/cjs/HostLiveness.d.ts +81 -0
  18. package/dist/cjs/HostLiveness.d.ts.map +1 -0
  19. package/dist/cjs/HostLiveness.js +49 -0
  20. package/dist/cjs/HostLiveness.js.map +7 -0
  21. package/dist/cjs/NodeHost.d.ts +145 -0
  22. package/dist/cjs/NodeHost.d.ts.map +1 -0
  23. package/dist/cjs/NodeHost.js +128 -0
  24. package/dist/cjs/NodeHost.js.map +7 -0
  25. package/dist/cjs/ProcessConfinement.d.ts +61 -0
  26. package/dist/cjs/ProcessConfinement.d.ts.map +1 -0
  27. package/dist/cjs/ProcessConfinement.js +292 -0
  28. package/dist/cjs/ProcessConfinement.js.map +7 -0
  29. package/dist/cjs/ProcessReaper.d.ts +457 -0
  30. package/dist/cjs/ProcessReaper.d.ts.map +1 -0
  31. package/dist/cjs/ProcessReaper.js +349 -0
  32. package/dist/cjs/ProcessReaper.js.map +7 -0
  33. package/dist/cjs/ProcessSandbox.d.ts +391 -0
  34. package/dist/cjs/ProcessSandbox.d.ts.map +1 -0
  35. package/dist/cjs/ProcessSandbox.js +774 -0
  36. package/dist/cjs/ProcessSandbox.js.map +7 -0
  37. package/dist/cjs/ScopedProcess.d.ts +66 -0
  38. package/dist/cjs/ScopedProcess.d.ts.map +1 -0
  39. package/dist/cjs/ScopedProcess.js +87 -0
  40. package/dist/cjs/ScopedProcess.js.map +7 -0
  41. package/dist/cjs/index.d.ts +38 -0
  42. package/dist/cjs/index.d.ts.map +1 -0
  43. package/dist/cjs/index.js +47 -0
  44. package/dist/cjs/index.js.map +7 -0
  45. package/dist/cjs/internal/AtomicFileSystemExecutable.d.ts +61 -0
  46. package/dist/cjs/internal/AtomicFileSystemExecutable.d.ts.map +1 -0
  47. package/dist/cjs/internal/AtomicFileSystemExecutable.js +250 -0
  48. package/dist/cjs/internal/AtomicFileSystemExecutable.js.map +7 -0
  49. package/dist/cjs/internal/AtomicFileSystemProtocol.d.ts +78 -0
  50. package/dist/cjs/internal/AtomicFileSystemProtocol.d.ts.map +1 -0
  51. package/dist/cjs/internal/AtomicFileSystemProtocol.js +382 -0
  52. package/dist/cjs/internal/AtomicFileSystemProtocol.js.map +7 -0
  53. package/dist/cjs/internal/AtomicFileSystemTransport.d.ts +44 -0
  54. package/dist/cjs/internal/AtomicFileSystemTransport.d.ts.map +1 -0
  55. package/dist/cjs/internal/AtomicFileSystemTransport.js +197 -0
  56. package/dist/cjs/internal/AtomicFileSystemTransport.js.map +7 -0
  57. package/dist/cjs/internal/AtomicHelperError.d.ts +35 -0
  58. package/dist/cjs/internal/AtomicHelperError.d.ts.map +1 -0
  59. package/dist/cjs/internal/AtomicHelperError.js +45 -0
  60. package/dist/cjs/internal/AtomicHelperError.js.map +7 -0
  61. package/dist/cjs/internal/AtomicHelperFault.d.ts +59 -0
  62. package/dist/cjs/internal/AtomicHelperFault.d.ts.map +1 -0
  63. package/dist/cjs/internal/AtomicHelperFault.js +66 -0
  64. package/dist/cjs/internal/AtomicHelperFault.js.map +7 -0
  65. package/dist/cjs/internal/PipedProcess.d.ts +35 -0
  66. package/dist/cjs/internal/PipedProcess.d.ts.map +1 -0
  67. package/dist/cjs/internal/PipedProcess.js +309 -0
  68. package/dist/cjs/internal/PipedProcess.js.map +7 -0
  69. package/dist/cjs/internal/ProcSnapshot.d.ts +85 -0
  70. package/dist/cjs/internal/ProcSnapshot.d.ts.map +1 -0
  71. package/dist/cjs/internal/ProcSnapshot.js +123 -0
  72. package/dist/cjs/internal/ProcSnapshot.js.map +7 -0
  73. package/dist/cjs/internal/ProcessCleanup.d.ts +64 -0
  74. package/dist/cjs/internal/ProcessCleanup.d.ts.map +1 -0
  75. package/dist/cjs/internal/ProcessCleanup.js +62 -0
  76. package/dist/cjs/internal/ProcessCleanup.js.map +7 -0
  77. package/dist/cjs/internal/ProcessCleanupPolicyError.d.ts +30 -0
  78. package/dist/cjs/internal/ProcessCleanupPolicyError.d.ts.map +1 -0
  79. package/dist/cjs/internal/ProcessCleanupPolicyError.js +33 -0
  80. package/dist/cjs/internal/ProcessCleanupPolicyError.js.map +7 -0
  81. package/dist/cjs/internal/ProcessFault.d.ts +63 -0
  82. package/dist/cjs/internal/ProcessFault.d.ts.map +1 -0
  83. package/dist/cjs/internal/ProcessFault.js +63 -0
  84. package/dist/cjs/internal/ProcessFault.js.map +7 -0
  85. package/dist/cjs/internal/ProcessSupervisor.d.ts +143 -0
  86. package/dist/cjs/internal/ProcessSupervisor.d.ts.map +1 -0
  87. package/dist/cjs/internal/ProcessSupervisor.js +685 -0
  88. package/dist/cjs/internal/ProcessSupervisor.js.map +7 -0
  89. package/dist/cjs/internal/SupervisorProgram.d.ts +9 -0
  90. package/dist/cjs/internal/SupervisorProgram.d.ts.map +1 -0
  91. package/dist/cjs/internal/SupervisorProgram.js +326 -0
  92. package/dist/cjs/internal/SupervisorProgram.js.map +7 -0
  93. package/dist/cjs/internal/WindowsProcessJob.d.ts +39 -0
  94. package/dist/cjs/internal/WindowsProcessJob.d.ts.map +1 -0
  95. package/dist/cjs/internal/WindowsProcessJob.js +113 -0
  96. package/dist/cjs/internal/WindowsProcessJob.js.map +7 -0
  97. package/dist/cjs/package.json +1 -0
  98. package/dist/esm/AtomicFileSystem.d.ts +147 -0
  99. package/dist/esm/AtomicFileSystem.d.ts.map +1 -0
  100. package/dist/esm/AtomicFileSystem.js +290 -0
  101. package/dist/esm/AtomicFileSystem.js.map +1 -0
  102. package/dist/esm/EgressHttpClient.d.ts +106 -0
  103. package/dist/esm/EgressHttpClient.d.ts.map +1 -0
  104. package/dist/esm/EgressHttpClient.js +259 -0
  105. package/dist/esm/EgressHttpClient.js.map +1 -0
  106. package/dist/esm/HostLiveness.d.ts +81 -0
  107. package/dist/esm/HostLiveness.d.ts.map +1 -0
  108. package/dist/esm/HostLiveness.js +68 -0
  109. package/dist/esm/HostLiveness.js.map +1 -0
  110. package/dist/esm/NodeHost.d.ts +145 -0
  111. package/dist/esm/NodeHost.d.ts.map +1 -0
  112. package/dist/esm/NodeHost.js +162 -0
  113. package/dist/esm/NodeHost.js.map +1 -0
  114. package/dist/esm/ProcessConfinement.d.ts +61 -0
  115. package/dist/esm/ProcessConfinement.d.ts.map +1 -0
  116. package/dist/esm/ProcessConfinement.js +311 -0
  117. package/dist/esm/ProcessConfinement.js.map +1 -0
  118. package/dist/esm/ProcessReaper.d.ts +457 -0
  119. package/dist/esm/ProcessReaper.d.ts.map +1 -0
  120. package/dist/esm/ProcessReaper.js +711 -0
  121. package/dist/esm/ProcessReaper.js.map +1 -0
  122. package/dist/esm/ProcessSandbox.d.ts +391 -0
  123. package/dist/esm/ProcessSandbox.d.ts.map +1 -0
  124. package/dist/esm/ProcessSandbox.js +1043 -0
  125. package/dist/esm/ProcessSandbox.js.map +1 -0
  126. package/dist/esm/ScopedProcess.d.ts +66 -0
  127. package/dist/esm/ScopedProcess.d.ts.map +1 -0
  128. package/dist/esm/ScopedProcess.js +67 -0
  129. package/dist/esm/ScopedProcess.js.map +1 -0
  130. package/dist/esm/index.d.ts +38 -0
  131. package/dist/esm/index.d.ts.map +1 -0
  132. package/dist/esm/index.js +38 -0
  133. package/dist/esm/index.js.map +1 -0
  134. package/dist/esm/internal/AtomicFileSystemExecutable.d.ts +61 -0
  135. package/dist/esm/internal/AtomicFileSystemExecutable.d.ts.map +1 -0
  136. package/dist/esm/internal/AtomicFileSystemExecutable.js +350 -0
  137. package/dist/esm/internal/AtomicFileSystemExecutable.js.map +1 -0
  138. package/dist/esm/internal/AtomicFileSystemProtocol.d.ts +78 -0
  139. package/dist/esm/internal/AtomicFileSystemProtocol.d.ts.map +1 -0
  140. package/dist/esm/internal/AtomicFileSystemProtocol.js +412 -0
  141. package/dist/esm/internal/AtomicFileSystemProtocol.js.map +1 -0
  142. package/dist/esm/internal/AtomicFileSystemTransport.d.ts +44 -0
  143. package/dist/esm/internal/AtomicFileSystemTransport.d.ts.map +1 -0
  144. package/dist/esm/internal/AtomicFileSystemTransport.js +242 -0
  145. package/dist/esm/internal/AtomicFileSystemTransport.js.map +1 -0
  146. package/dist/esm/internal/AtomicHelperError.d.ts +35 -0
  147. package/dist/esm/internal/AtomicHelperError.d.ts.map +1 -0
  148. package/dist/esm/internal/AtomicHelperError.js +39 -0
  149. package/dist/esm/internal/AtomicHelperError.js.map +1 -0
  150. package/dist/esm/internal/AtomicHelperFault.d.ts +59 -0
  151. package/dist/esm/internal/AtomicHelperFault.d.ts.map +1 -0
  152. package/dist/esm/internal/AtomicHelperFault.js +66 -0
  153. package/dist/esm/internal/AtomicHelperFault.js.map +1 -0
  154. package/dist/esm/internal/PipedProcess.d.ts +35 -0
  155. package/dist/esm/internal/PipedProcess.d.ts.map +1 -0
  156. package/dist/esm/internal/PipedProcess.js +321 -0
  157. package/dist/esm/internal/PipedProcess.js.map +1 -0
  158. package/dist/esm/internal/ProcSnapshot.d.ts +85 -0
  159. package/dist/esm/internal/ProcSnapshot.d.ts.map +1 -0
  160. package/dist/esm/internal/ProcSnapshot.js +188 -0
  161. package/dist/esm/internal/ProcSnapshot.js.map +1 -0
  162. package/dist/esm/internal/ProcessCleanup.d.ts +64 -0
  163. package/dist/esm/internal/ProcessCleanup.d.ts.map +1 -0
  164. package/dist/esm/internal/ProcessCleanup.js +45 -0
  165. package/dist/esm/internal/ProcessCleanup.js.map +1 -0
  166. package/dist/esm/internal/ProcessCleanupPolicyError.d.ts +30 -0
  167. package/dist/esm/internal/ProcessCleanupPolicyError.d.ts.map +1 -0
  168. package/dist/esm/internal/ProcessCleanupPolicyError.js +25 -0
  169. package/dist/esm/internal/ProcessCleanupPolicyError.js.map +1 -0
  170. package/dist/esm/internal/ProcessFault.d.ts +63 -0
  171. package/dist/esm/internal/ProcessFault.d.ts.map +1 -0
  172. package/dist/esm/internal/ProcessFault.js +64 -0
  173. package/dist/esm/internal/ProcessFault.js.map +1 -0
  174. package/dist/esm/internal/ProcessSupervisor.d.ts +143 -0
  175. package/dist/esm/internal/ProcessSupervisor.d.ts.map +1 -0
  176. package/dist/esm/internal/ProcessSupervisor.js +689 -0
  177. package/dist/esm/internal/ProcessSupervisor.js.map +1 -0
  178. package/dist/esm/internal/SupervisorProgram.d.ts +9 -0
  179. package/dist/esm/internal/SupervisorProgram.d.ts.map +1 -0
  180. package/dist/esm/internal/SupervisorProgram.js +310 -0
  181. package/dist/esm/internal/SupervisorProgram.js.map +1 -0
  182. package/dist/esm/internal/WindowsProcessJob.d.ts +39 -0
  183. package/dist/esm/internal/WindowsProcessJob.d.ts.map +1 -0
  184. package/dist/esm/internal/WindowsProcessJob.js +115 -0
  185. package/dist/esm/internal/WindowsProcessJob.js.map +1 -0
  186. package/dist/vendor/adapters.json +1757 -0
  187. package/dist/vendor/chunk-2Y7WC4KU.js +109 -0
  188. package/dist/vendor/chunk-3GR5VZ2M.js +118 -0
  189. package/dist/vendor/chunk-42QKY6T6.js +40 -0
  190. package/dist/vendor/chunk-54RLBMTZ.js +61 -0
  191. package/dist/vendor/chunk-5ZMHBXIK.js +55 -0
  192. package/dist/vendor/chunk-6ME2W7TF.js +28 -0
  193. package/dist/vendor/chunk-AMQKOQNT.js +34 -0
  194. package/dist/vendor/chunk-B3FZ67QU.js +59 -0
  195. package/dist/vendor/chunk-BKTBUBQY.js +437 -0
  196. package/dist/vendor/chunk-DS7GF46S.js +34 -0
  197. package/dist/vendor/chunk-DVOAHXPG.js +104 -0
  198. package/dist/vendor/chunk-DWSHTSVX.js +229 -0
  199. package/dist/vendor/chunk-EGBNVEEW.js +14 -0
  200. package/dist/vendor/chunk-EZWY45HP.js +18 -0
  201. package/dist/vendor/chunk-FNZOJHSV.js +71 -0
  202. package/dist/vendor/chunk-GXCHI7BM.js +131 -0
  203. package/dist/vendor/chunk-IIJ52ZU6.js +20 -0
  204. package/dist/vendor/chunk-J7A4CZDO.js +92 -0
  205. package/dist/vendor/chunk-JG5TTWPT.js +85 -0
  206. package/dist/vendor/chunk-JJ24ARBQ.js +394 -0
  207. package/dist/vendor/chunk-KOZMM5PZ.js +426 -0
  208. package/dist/vendor/chunk-KUUXSID7.js +18 -0
  209. package/dist/vendor/chunk-LEUPYT3Q.js +36 -0
  210. package/dist/vendor/chunk-M32LDTW7.js +18 -0
  211. package/dist/vendor/chunk-M7CLUILA.js +0 -0
  212. package/dist/vendor/chunk-MBSKBQ5D.js +21 -0
  213. package/dist/vendor/chunk-MLKGABMK.js +9 -0
  214. package/dist/vendor/chunk-NBVRTDTV.js +129 -0
  215. package/dist/vendor/chunk-OXNGN5H7.js +81 -0
  216. package/dist/vendor/chunk-QPLDT6A6.js +564 -0
  217. package/dist/vendor/chunk-QYBKAIA6.js +18 -0
  218. package/dist/vendor/chunk-RO2R4MJH.js +62 -0
  219. package/dist/vendor/chunk-SIR62W3Y.js +398 -0
  220. package/dist/vendor/chunk-TFIKFFSC.js +26 -0
  221. package/dist/vendor/chunk-TXKLEBBL.js +143 -0
  222. package/dist/vendor/chunk-UFH5UUZK.js +48 -0
  223. package/dist/vendor/chunk-VANKHF46.js +96 -0
  224. package/dist/vendor/chunk-VZBDV3TV.js +18 -0
  225. package/dist/vendor/chunk-XDKNKFBW.js +22 -0
  226. package/dist/vendor/chunk-XH4U3JSV.js +249 -0
  227. package/dist/vendor/chunk-Y35ZAO5U.js +53 -0
  228. package/dist/vendor/chunk-ZJMRMY57.js +0 -0
  229. package/dist/vendor/cjs/node/NodeChildProcessSpawner.d.ts +7 -0
  230. package/dist/vendor/cjs/node/NodeChildProcessSpawner.js +1 -0
  231. package/dist/vendor/cjs/node/NodeClusterHttp.d.ts +63 -0
  232. package/dist/vendor/cjs/node/NodeClusterHttp.js +1 -0
  233. package/dist/vendor/cjs/node/NodeClusterSocket.d.ts +79 -0
  234. package/dist/vendor/cjs/node/NodeClusterSocket.js +1 -0
  235. package/dist/vendor/cjs/node/NodeCrypto.d.ts +10 -0
  236. package/dist/vendor/cjs/node/NodeCrypto.js +1 -0
  237. package/dist/vendor/cjs/node/NodeFileSystem.d.ts +10 -0
  238. package/dist/vendor/cjs/node/NodeFileSystem.js +1 -0
  239. package/dist/vendor/cjs/node/NodeHttpClient.d.ts +179 -0
  240. package/dist/vendor/cjs/node/NodeHttpClient.js +1 -0
  241. package/dist/vendor/cjs/node/NodeHttpIncomingMessage.d.ts +62 -0
  242. package/dist/vendor/cjs/node/NodeHttpIncomingMessage.js +1 -0
  243. package/dist/vendor/cjs/node/NodeHttpPlatform.d.ts +36 -0
  244. package/dist/vendor/cjs/node/NodeHttpPlatform.js +1 -0
  245. package/dist/vendor/cjs/node/NodeHttpServer.d.ts +120 -0
  246. package/dist/vendor/cjs/node/NodeHttpServer.js +1 -0
  247. package/dist/vendor/cjs/node/NodeHttpServerRequest.d.ts +29 -0
  248. package/dist/vendor/cjs/node/NodeHttpServerRequest.js +1 -0
  249. package/dist/vendor/cjs/node/NodeMultipart.d.ts +46 -0
  250. package/dist/vendor/cjs/node/NodeMultipart.js +1 -0
  251. package/dist/vendor/cjs/node/NodeMultipartParser.d.ts +97 -0
  252. package/dist/vendor/cjs/node/NodeMultipartParser.js +1 -0
  253. package/dist/vendor/cjs/node/NodePath.d.ts +27 -0
  254. package/dist/vendor/cjs/node/NodePath.js +1 -0
  255. package/dist/vendor/cjs/node/NodeRedis.d.ts +74 -0
  256. package/dist/vendor/cjs/node/NodeRedis.js +1 -0
  257. package/dist/vendor/cjs/node/NodeRuntime.d.ts +85 -0
  258. package/dist/vendor/cjs/node/NodeRuntime.js +1 -0
  259. package/dist/vendor/cjs/node/NodeServices.d.ts +34 -0
  260. package/dist/vendor/cjs/node/NodeServices.js +1 -0
  261. package/dist/vendor/cjs/node/NodeSink.d.ts +8 -0
  262. package/dist/vendor/cjs/node/NodeSink.js +1 -0
  263. package/dist/vendor/cjs/node/NodeSocket.d.ts +38 -0
  264. package/dist/vendor/cjs/node/NodeSocket.js +1 -0
  265. package/dist/vendor/cjs/node/NodeSocketServer.d.ts +8 -0
  266. package/dist/vendor/cjs/node/NodeSocketServer.js +1 -0
  267. package/dist/vendor/cjs/node/NodeStdio.d.ts +11 -0
  268. package/dist/vendor/cjs/node/NodeStdio.js +1 -0
  269. package/dist/vendor/cjs/node/NodeStream.d.ts +8 -0
  270. package/dist/vendor/cjs/node/NodeStream.js +1 -0
  271. package/dist/vendor/cjs/node/NodeTerminal.d.ts +21 -0
  272. package/dist/vendor/cjs/node/NodeTerminal.js +1 -0
  273. package/dist/vendor/cjs/node/NodeWorker.d.ts +22 -0
  274. package/dist/vendor/cjs/node/NodeWorker.js +1 -0
  275. package/dist/vendor/cjs/node/NodeWorkerRunner.d.ts +12 -0
  276. package/dist/vendor/cjs/node/NodeWorkerRunner.js +1 -0
  277. package/dist/vendor/cjs/node/Undici.d.ts +28 -0
  278. package/dist/vendor/cjs/node/Undici.js +1 -0
  279. package/dist/vendor/cjs/node/index.d.ts +100 -0
  280. package/dist/vendor/cjs/node/index.js +1 -0
  281. package/dist/vendor/cjs/node-shared/NodeChildProcessSpawner.d.ts +57 -0
  282. package/dist/vendor/cjs/node-shared/NodeChildProcessSpawner.js +1 -0
  283. package/dist/vendor/cjs/node-shared/NodeClusterSocket.d.ts +22 -0
  284. package/dist/vendor/cjs/node-shared/NodeClusterSocket.js +1 -0
  285. package/dist/vendor/cjs/node-shared/NodeCrypto.d.ts +27 -0
  286. package/dist/vendor/cjs/node-shared/NodeCrypto.js +1 -0
  287. package/dist/vendor/cjs/node-shared/NodeFileSystem.d.ts +11 -0
  288. package/dist/vendor/cjs/node-shared/NodeFileSystem.js +1 -0
  289. package/dist/vendor/cjs/node-shared/NodeHttpCompression.d.ts +36 -0
  290. package/dist/vendor/cjs/node-shared/NodeHttpCompression.js +1 -0
  291. package/dist/vendor/cjs/node-shared/NodePath.d.ts +27 -0
  292. package/dist/vendor/cjs/node-shared/NodePath.js +1 -0
  293. package/dist/vendor/cjs/node-shared/NodeRuntime.d.ts +47 -0
  294. package/dist/vendor/cjs/node-shared/NodeRuntime.js +1 -0
  295. package/dist/vendor/cjs/node-shared/NodeSink.d.ts +69 -0
  296. package/dist/vendor/cjs/node-shared/NodeSink.js +1 -0
  297. package/dist/vendor/cjs/node-shared/NodeSocket.d.ts +134 -0
  298. package/dist/vendor/cjs/node-shared/NodeSocket.js +1 -0
  299. package/dist/vendor/cjs/node-shared/NodeSocketServer.d.ts +80 -0
  300. package/dist/vendor/cjs/node-shared/NodeSocketServer.js +1 -0
  301. package/dist/vendor/cjs/node-shared/NodeStdio.d.ts +12 -0
  302. package/dist/vendor/cjs/node-shared/NodeStdio.js +1 -0
  303. package/dist/vendor/cjs/node-shared/NodeStream.d.ts +179 -0
  304. package/dist/vendor/cjs/node-shared/NodeStream.js +1 -0
  305. package/dist/vendor/cjs/node-shared/NodeTerminal.d.ts +22 -0
  306. package/dist/vendor/cjs/node-shared/NodeTerminal.js +1 -0
  307. package/dist/vendor/cjs/node-shared/index.d.ts +56 -0
  308. package/dist/vendor/cjs/node-shared/index.js +1 -0
  309. package/dist/vendor/cjs/node-shared/internal/nodeChildProcessSpawner.d.ts +4 -0
  310. package/dist/vendor/cjs/node-shared/internal/nodeChildProcessSpawner.js +1 -0
  311. package/dist/vendor/cjs/node-shared/internal/utils.d.ts +2 -0
  312. package/dist/vendor/cjs/node-shared/internal/utils.js +1 -0
  313. package/dist/vendor/cjs/package.json +1 -0
  314. package/dist/vendor/cjs/platform-node-shared.d.ts +56 -0
  315. package/dist/vendor/cjs/platform-node-shared.js +1 -0
  316. package/dist/vendor/cjs/platform-node.d.ts +100 -0
  317. package/dist/vendor/cjs/platform-node.js +1 -0
  318. package/dist/vendor/node/LICENSE +21 -0
  319. package/dist/vendor/node/NodeChildProcessSpawner.d.ts +7 -0
  320. package/dist/vendor/node/NodeChildProcessSpawner.js +14 -0
  321. package/dist/vendor/node/NodeClusterHttp.d.ts +63 -0
  322. package/dist/vendor/node/NodeClusterHttp.js +43 -0
  323. package/dist/vendor/node/NodeClusterSocket.d.ts +79 -0
  324. package/dist/vendor/node/NodeClusterSocket.js +30 -0
  325. package/dist/vendor/node/NodeCrypto.d.ts +10 -0
  326. package/dist/vendor/node/NodeCrypto.js +8 -0
  327. package/dist/vendor/node/NodeFileSystem.d.ts +10 -0
  328. package/dist/vendor/node/NodeFileSystem.js +9 -0
  329. package/dist/vendor/node/NodeHttpClient.d.ts +179 -0
  330. package/dist/vendor/node/NodeHttpClient.js +46 -0
  331. package/dist/vendor/node/NodeHttpIncomingMessage.d.ts +62 -0
  332. package/dist/vendor/node/NodeHttpIncomingMessage.js +10 -0
  333. package/dist/vendor/node/NodeHttpPlatform.d.ts +36 -0
  334. package/dist/vendor/node/NodeHttpPlatform.js +16 -0
  335. package/dist/vendor/node/NodeHttpServer.d.ts +120 -0
  336. package/dist/vendor/node/NodeHttpServer.js +46 -0
  337. package/dist/vendor/node/NodeHttpServerRequest.d.ts +29 -0
  338. package/dist/vendor/node/NodeHttpServerRequest.js +9 -0
  339. package/dist/vendor/node/NodeMultipart.d.ts +46 -0
  340. package/dist/vendor/node/NodeMultipart.js +15 -0
  341. package/dist/vendor/node/NodeMultipartParser.d.ts +97 -0
  342. package/dist/vendor/node/NodeMultipartParser.js +11 -0
  343. package/dist/vendor/node/NodePath.d.ts +27 -0
  344. package/dist/vendor/node/NodePath.js +12 -0
  345. package/dist/vendor/node/NodeRedis.d.ts +74 -0
  346. package/dist/vendor/node/NodeRedis.js +11 -0
  347. package/dist/vendor/node/NodeRuntime.d.ts +85 -0
  348. package/dist/vendor/node/NodeRuntime.js +8 -0
  349. package/dist/vendor/node/NodeServices.d.ts +34 -0
  350. package/dist/vendor/node/NodeServices.js +23 -0
  351. package/dist/vendor/node/NodeSink.d.ts +8 -0
  352. package/dist/vendor/node/NodeSink.js +12 -0
  353. package/dist/vendor/node/NodeSocket.d.ts +38 -0
  354. package/dist/vendor/node/NodeSocket.js +31 -0
  355. package/dist/vendor/node/NodeSocketServer.d.ts +8 -0
  356. package/dist/vendor/node/NodeSocketServer.js +21 -0
  357. package/dist/vendor/node/NodeStdio.d.ts +11 -0
  358. package/dist/vendor/node/NodeStdio.js +10 -0
  359. package/dist/vendor/node/NodeStream.d.ts +8 -0
  360. package/dist/vendor/node/NodeStream.js +27 -0
  361. package/dist/vendor/node/NodeTerminal.d.ts +21 -0
  362. package/dist/vendor/node/NodeTerminal.js +10 -0
  363. package/dist/vendor/node/NodeWorker.d.ts +22 -0
  364. package/dist/vendor/node/NodeWorker.js +9 -0
  365. package/dist/vendor/node/NodeWorkerRunner.d.ts +12 -0
  366. package/dist/vendor/node/NodeWorkerRunner.js +7 -0
  367. package/dist/vendor/node/Undici.d.ts +28 -0
  368. package/dist/vendor/node/Undici.js +9 -0
  369. package/dist/vendor/node/index.d.ts +100 -0
  370. package/dist/vendor/node/index.js +115 -0
  371. package/dist/vendor/node-shared/LICENSE +21 -0
  372. package/dist/vendor/node-shared/NodeChildProcessSpawner.d.ts +57 -0
  373. package/dist/vendor/node-shared/NodeChildProcessSpawner.js +13 -0
  374. package/dist/vendor/node-shared/NodeClusterSocket.d.ts +22 -0
  375. package/dist/vendor/node-shared/NodeClusterSocket.js +11 -0
  376. package/dist/vendor/node-shared/NodeCrypto.d.ts +27 -0
  377. package/dist/vendor/node-shared/NodeCrypto.js +9 -0
  378. package/dist/vendor/node-shared/NodeFileSystem.d.ts +11 -0
  379. package/dist/vendor/node-shared/NodeFileSystem.js +8 -0
  380. package/dist/vendor/node-shared/NodeHttpCompression.d.ts +36 -0
  381. package/dist/vendor/node-shared/NodeHttpCompression.js +13 -0
  382. package/dist/vendor/node-shared/NodePath.d.ts +27 -0
  383. package/dist/vendor/node-shared/NodePath.js +11 -0
  384. package/dist/vendor/node-shared/NodeRuntime.d.ts +47 -0
  385. package/dist/vendor/node-shared/NodeRuntime.js +7 -0
  386. package/dist/vendor/node-shared/NodeSink.d.ts +69 -0
  387. package/dist/vendor/node-shared/NodeSink.js +11 -0
  388. package/dist/vendor/node-shared/NodeSocket.d.ts +134 -0
  389. package/dist/vendor/node-shared/NodeSocket.js +23 -0
  390. package/dist/vendor/node-shared/NodeSocketServer.d.ts +80 -0
  391. package/dist/vendor/node-shared/NodeSocketServer.js +20 -0
  392. package/dist/vendor/node-shared/NodeStdio.d.ts +12 -0
  393. package/dist/vendor/node-shared/NodeStdio.js +9 -0
  394. package/dist/vendor/node-shared/NodeStream.d.ts +179 -0
  395. package/dist/vendor/node-shared/NodeStream.js +26 -0
  396. package/dist/vendor/node-shared/NodeTerminal.d.ts +22 -0
  397. package/dist/vendor/node-shared/NodeTerminal.js +9 -0
  398. package/dist/vendor/node-shared/index.d.ts +56 -0
  399. package/dist/vendor/node-shared/index.js +58 -0
  400. package/dist/vendor/node-shared/internal/nodeChildProcessSpawner.d.ts +4 -0
  401. package/dist/vendor/node-shared/internal/nodeChildProcessSpawner.js +7 -0
  402. package/dist/vendor/node-shared/internal/utils.d.ts +2 -0
  403. package/dist/vendor/node-shared/internal/utils.js +7 -0
  404. package/dist/vendor/platform-node-shared.d.ts +56 -0
  405. package/dist/vendor/platform-node-shared.js +58 -0
  406. package/dist/vendor/platform-node.d.ts +100 -0
  407. package/dist/vendor/platform-node.js +115 -0
  408. package/docs/README.md +129 -0
  409. package/docs/api.md +553 -0
  410. package/docs/concepts/descriptor-relative-filesystem.md +181 -0
  411. package/docs/concepts/host-bundle.md +125 -0
  412. package/docs/concepts/process-containment.md +190 -0
  413. package/docs/guides/answer-run-ownership.md +87 -0
  414. package/docs/guides/configure-the-filesystem-helper.md +152 -0
  415. package/docs/guides/contain-child-processes.md +139 -0
  416. package/docs/guides/match-files-with-glob.md +151 -0
  417. package/docs/installation.md +204 -0
  418. package/docs/quickstart.md +147 -0
  419. package/docs/troubleshooting.md +130 -0
  420. package/package.json +202 -3
  421. package/src/AtomicFileSystem.ts +415 -0
  422. package/src/EgressHttpClient.ts +327 -0
  423. package/src/HostLiveness.ts +103 -0
  424. package/src/NodeHost.ts +253 -0
  425. package/src/ProcessConfinement.ts +363 -0
  426. package/src/ProcessReaper.ts +951 -0
  427. package/src/ProcessSandbox.ts +1307 -0
  428. package/src/ScopedProcess.ts +124 -0
  429. package/src/index.ts +44 -0
  430. package/src/internal/AtomicFileSystemExecutable.ts +379 -0
  431. package/src/internal/AtomicFileSystemProtocol.ts +502 -0
  432. package/src/internal/AtomicFileSystemTransport.ts +272 -0
  433. package/src/internal/AtomicHelperError.ts +50 -0
  434. package/src/internal/AtomicHelperFault.ts +84 -0
  435. package/src/internal/PipedProcess.ts +357 -0
  436. package/src/internal/ProcSnapshot.ts +193 -0
  437. package/src/internal/ProcessCleanup.ts +99 -0
  438. package/src/internal/ProcessCleanupPolicyError.ts +30 -0
  439. package/src/internal/ProcessFault.ts +82 -0
  440. package/src/internal/ProcessSupervisor.ts +807 -0
  441. package/src/internal/SupervisorProgram.ts +309 -0
  442. package/src/internal/WindowsProcessJob.ts +114 -0
@@ -0,0 +1,437 @@
1
+ import {
2
+ handleErrnoException
3
+ } from "./chunk-42QKY6T6.js";
4
+ import {
5
+ __export
6
+ } from "./chunk-MLKGABMK.js";
7
+
8
+ // ../../../../node_modules/.pnpm/@effect+platform-node-shared@4.0.0-rc.115_effect@4.0.0-rc.115/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 openFactory = (method) => {
122
+ const nodeOpen = effectify(NFS.open, handleErrnoException("FileSystem", method), handleBadArgument(method));
123
+ const nodeClose = effectify(NFS.close, handleErrnoException("FileSystem", method), handleBadArgument(method));
124
+ return (path, options) => pipe(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), (fd) => Effect.orDie(nodeClose(fd))), Effect.map((fd) => makeFile(fd, options?.flag?.startsWith("a") ?? false)));
125
+ };
126
+ var open2 = /* @__PURE__ */ openFactory("open");
127
+ var makeFile = /* @__PURE__ */ (() => {
128
+ const nodeReadFactory = (method) => effectify(NFS.read, handleErrnoException("FileSystem", method), handleBadArgument(method));
129
+ const nodeRead = /* @__PURE__ */ nodeReadFactory("read");
130
+ const nodeReadAlloc = /* @__PURE__ */ nodeReadFactory("readAlloc");
131
+ const nodeStat = /* @__PURE__ */ effectify(NFS.fstat, /* @__PURE__ */ handleErrnoException("FileSystem", "stat"), /* @__PURE__ */ handleBadArgument("stat"));
132
+ const nodeTruncate = /* @__PURE__ */ effectify(NFS.ftruncate, /* @__PURE__ */ handleErrnoException("FileSystem", "truncate"), /* @__PURE__ */ handleBadArgument("truncate"));
133
+ const nodeSync = /* @__PURE__ */ effectify(NFS.fsync, /* @__PURE__ */ handleErrnoException("FileSystem", "sync"), /* @__PURE__ */ handleBadArgument("sync"));
134
+ const nodeWriteFactory = (method) => effectify(NFS.write, handleErrnoException("FileSystem", method), handleBadArgument(method));
135
+ const nodeWrite = /* @__PURE__ */ nodeWriteFactory("write");
136
+ const nodeWriteAll = /* @__PURE__ */ nodeWriteFactory("writeAll");
137
+ class FileImpl {
138
+ [FileSystem.FileTypeId];
139
+ fd;
140
+ append;
141
+ position = /* @__PURE__ */ BigInt(0);
142
+ constructor(fd, append) {
143
+ this[FileSystem.FileTypeId] = FileSystem.FileTypeId;
144
+ this.fd = fd;
145
+ this.append = append;
146
+ }
147
+ get stat() {
148
+ return Effect.flatMap(nodeStat(this.fd, {
149
+ bigint: true
150
+ }), makeFileInfo);
151
+ }
152
+ get sync() {
153
+ return nodeSync(this.fd);
154
+ }
155
+ seek(offset, from) {
156
+ return Effect.suspend(() => {
157
+ const position = from === "start" ? offset : this.position + offset;
158
+ if (position < BigInt(0)) {
159
+ return Effect.fail(Error.badArgument({
160
+ module: "FileSystem",
161
+ method: "seek",
162
+ description: "Cannot seek before the start of the file"
163
+ }));
164
+ }
165
+ this.position = position;
166
+ return Effect.succeed(position);
167
+ });
168
+ }
169
+ read(buffer) {
170
+ return Effect.suspend(() => {
171
+ const position = this.position;
172
+ return Effect.map(nodeRead(this.fd, {
173
+ buffer,
174
+ position
175
+ }), (bytesRead) => {
176
+ this.position = position + BigInt(bytesRead);
177
+ return bytesRead;
178
+ });
179
+ });
180
+ }
181
+ readAlloc(size) {
182
+ return Effect.suspend(() => {
183
+ try {
184
+ if (!Number.isInteger(size) || size < 0) {
185
+ throw new RangeError("size must be a non-negative integer");
186
+ }
187
+ const buffer = Buffer.allocUnsafeSlow(size);
188
+ const position = this.position;
189
+ return Effect.map(nodeReadAlloc(this.fd, {
190
+ buffer,
191
+ position
192
+ }), (bytesRead) => {
193
+ if (bytesRead === 0) {
194
+ return Option.none();
195
+ }
196
+ this.position = position + BigInt(bytesRead);
197
+ if (bytesRead === size) {
198
+ return Option.some(buffer);
199
+ }
200
+ const dst = Buffer.allocUnsafeSlow(bytesRead);
201
+ buffer.copy(dst, 0, 0, bytesRead);
202
+ return Option.some(dst);
203
+ });
204
+ } catch (cause) {
205
+ return Effect.fail(handleBadArgument("readAlloc")(cause));
206
+ }
207
+ });
208
+ }
209
+ truncate(length) {
210
+ return Effect.map(nodeTruncate(this.fd, length || void 0), () => {
211
+ if (!this.append) {
212
+ const len = BigInt(length ?? 0);
213
+ if (this.position > len) {
214
+ this.position = len;
215
+ }
216
+ }
217
+ });
218
+ }
219
+ write(buffer) {
220
+ return Effect.suspend(() => {
221
+ const position = this.position;
222
+ 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) => {
223
+ if (!this.append) {
224
+ this.position = position + BigInt(bytesWritten);
225
+ }
226
+ return bytesWritten;
227
+ }));
228
+ });
229
+ }
230
+ writeAllChunk(buffer) {
231
+ return Effect.suspend(() => {
232
+ const position = this.position;
233
+ 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) => {
234
+ if (bytesWritten === 0) {
235
+ return Effect.fail(Error.systemError({
236
+ module: "FileSystem",
237
+ method: "writeAll",
238
+ _tag: "WriteZero",
239
+ pathOrDescriptor: this.fd,
240
+ description: "write returned 0 bytes written"
241
+ }));
242
+ }
243
+ if (!this.append) {
244
+ this.position = position + BigInt(bytesWritten);
245
+ }
246
+ return bytesWritten < buffer.length ? this.writeAllChunk(buffer.subarray(bytesWritten)) : Effect.void;
247
+ }));
248
+ });
249
+ }
250
+ writeAll(buffer) {
251
+ return buffer.length === 0 ? Effect.void : this.writeAllChunk(buffer);
252
+ }
253
+ }
254
+ return (fd, append) => new FileImpl(fd, append);
255
+ })();
256
+ var makeTempFileFactory = (method) => {
257
+ const makeDirectory2 = makeTempDirectoryFactory(method);
258
+ return Effect.fnUntraced(function* (options) {
259
+ const directory = yield* makeDirectory2(options);
260
+ const random = Crypto.randomBytes(6).toString("hex");
261
+ const name = Path.join(directory, options?.suffix ? `${random}${options.suffix}` : random);
262
+ yield* writeFile2(name, new Uint8Array(0));
263
+ return name;
264
+ });
265
+ };
266
+ var makeTempFile = /* @__PURE__ */ makeTempFileFactory("makeTempFile");
267
+ var makeTempFileScoped = /* @__PURE__ */ (() => {
268
+ const makeFile2 = /* @__PURE__ */ makeTempFileFactory("makeTempFileScoped");
269
+ const removeDirectory = /* @__PURE__ */ removeFactory("makeTempFileScoped");
270
+ return (options) => Effect.acquireRelease(makeFile2(options), (file) => Effect.orDie(removeDirectory(Path.dirname(file), {
271
+ recursive: true
272
+ })));
273
+ })();
274
+ var readDirectory = (path, options) => Effect.tryPromise({
275
+ try: () => NFS.promises.readdir(path, options),
276
+ catch: (err) => handleErrnoException("FileSystem", "readDirectory")(err, [path])
277
+ });
278
+ var readFile2 = (path) => Effect.callback((resume, signal) => {
279
+ try {
280
+ NFS.readFile(path, {
281
+ signal
282
+ }, (err, data) => {
283
+ if (err) {
284
+ resume(Effect.fail(handleErrnoException("FileSystem", "readFile")(err, [path])));
285
+ } else {
286
+ resume(Effect.succeed(data));
287
+ }
288
+ });
289
+ } catch (err) {
290
+ resume(Effect.fail(handleBadArgument("readFile")(err)));
291
+ }
292
+ });
293
+ var readLink = /* @__PURE__ */ (() => {
294
+ const nodeReadLink = /* @__PURE__ */ effectify(NFS.readlink, /* @__PURE__ */ handleErrnoException("FileSystem", "readLink"), /* @__PURE__ */ handleBadArgument("readLink"));
295
+ return (path) => nodeReadLink(path);
296
+ })();
297
+ var realPath = /* @__PURE__ */ (() => {
298
+ const nodeRealPath = /* @__PURE__ */ effectify(NFS.realpath, /* @__PURE__ */ handleErrnoException("FileSystem", "realPath"), /* @__PURE__ */ handleBadArgument("realPath"));
299
+ return (path) => nodeRealPath(path);
300
+ })();
301
+ var rename2 = /* @__PURE__ */ (() => {
302
+ const nodeRename = /* @__PURE__ */ effectify(NFS.rename, /* @__PURE__ */ handleErrnoException("FileSystem", "rename"), /* @__PURE__ */ handleBadArgument("rename"));
303
+ return (oldPath, newPath) => nodeRename(oldPath, newPath);
304
+ })();
305
+ var makeFileInfo = (stat3) => Effect.try({
306
+ try: () => ({
307
+ type: stat3.isFile() ? "File" : stat3.isDirectory() ? "Directory" : stat3.isSymbolicLink() ? "SymbolicLink" : stat3.isBlockDevice() ? "BlockDevice" : stat3.isCharacterDevice() ? "CharacterDevice" : stat3.isFIFO() ? "FIFO" : stat3.isSocket() ? "Socket" : "Unknown",
308
+ mtime: Option.fromNullishOr(stat3.mtime),
309
+ atime: Option.fromNullishOr(stat3.atime),
310
+ birthtime: Option.fromNullishOr(stat3.birthtime),
311
+ dev: bigintToNumber(stat3.dev, "dev"),
312
+ rdev: bigintToNumberOption(stat3.rdev),
313
+ ino: bigintToNumberOption(stat3.ino),
314
+ mode: bigintToNumber(stat3.mode, "mode"),
315
+ nlink: bigintToNumberOption(stat3.nlink),
316
+ uid: bigintToNumberOption(stat3.uid),
317
+ gid: bigintToNumberOption(stat3.gid),
318
+ size: ByteSize.bytes(stat3.size),
319
+ blksize: stat3.blksize !== void 0 ? Option.some(ByteSize.bytes(stat3.blksize)) : Option.none(),
320
+ blocks: bigintToNumberOption(stat3.blocks)
321
+ }),
322
+ catch: handleBadArgument("stat")
323
+ });
324
+ var stat2 = /* @__PURE__ */ (() => {
325
+ const nodeStat = /* @__PURE__ */ effectify(NFS.stat, /* @__PURE__ */ handleErrnoException("FileSystem", "stat"), /* @__PURE__ */ handleBadArgument("stat"));
326
+ return (path) => Effect.flatMap(nodeStat(path, {
327
+ bigint: true
328
+ }), makeFileInfo);
329
+ })();
330
+ var symlink2 = /* @__PURE__ */ (() => {
331
+ const nodeSymlink = /* @__PURE__ */ effectify(NFS.symlink, /* @__PURE__ */ handleErrnoException("FileSystem", "symlink"), /* @__PURE__ */ handleBadArgument("symlink"));
332
+ return (target, path) => nodeSymlink(target, path);
333
+ })();
334
+ var truncate2 = /* @__PURE__ */ (() => {
335
+ const nodeTruncate = /* @__PURE__ */ effectify(NFS.truncate, /* @__PURE__ */ handleErrnoException("FileSystem", "truncate"), /* @__PURE__ */ handleBadArgument("truncate"));
336
+ return (path, length) => nodeTruncate(path, length);
337
+ })();
338
+ var utimes2 = /* @__PURE__ */ (() => {
339
+ const nodeUtimes = /* @__PURE__ */ effectify(NFS.utimes, /* @__PURE__ */ handleErrnoException("FileSystem", "utime"), /* @__PURE__ */ handleBadArgument("utime"));
340
+ return (path, atime, mtime) => nodeUtimes(path, atime, mtime);
341
+ })();
342
+ var watchNode = (path, info, options) => Stream.callback((queue) => Effect.acquireRelease(Effect.sync(() => {
343
+ const directory = info.type === "Directory" ? path : Path.dirname(path);
344
+ const watcher = NFS.watch(path, {
345
+ recursive: options?.recursive ?? false
346
+ }, (event, path2) => {
347
+ if (!path2) return;
348
+ switch (event) {
349
+ case "rename": {
350
+ Effect.runFork(Effect.matchEffect(stat2(Path.resolve(directory, path2)), {
351
+ onSuccess: (_) => Queue.offer(queue, {
352
+ _tag: "Create",
353
+ path: path2
354
+ }),
355
+ onFailure: (_) => Queue.offer(queue, {
356
+ _tag: "Remove",
357
+ path: path2
358
+ })
359
+ }));
360
+ return;
361
+ }
362
+ case "change": {
363
+ Queue.offerUnsafe(queue, {
364
+ _tag: "Update",
365
+ path: path2
366
+ });
367
+ return;
368
+ }
369
+ }
370
+ });
371
+ watcher.on("error", (error) => {
372
+ Queue.failCauseUnsafe(queue, Cause.fail(Error.systemError({
373
+ module: "FileSystem",
374
+ _tag: "Unknown",
375
+ method: "watch",
376
+ pathOrDescriptor: path,
377
+ cause: error
378
+ })));
379
+ });
380
+ watcher.on("close", () => {
381
+ Queue.endUnsafe(queue);
382
+ });
383
+ return watcher;
384
+ }), (watcher) => Effect.sync(() => watcher.close())));
385
+ 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);
386
+ var writeFile2 = (path, data, options) => Effect.callback((resume, signal) => {
387
+ try {
388
+ NFS.writeFile(path, data, {
389
+ signal,
390
+ flag: options?.flag,
391
+ mode: options?.mode
392
+ }, (err) => {
393
+ if (err) {
394
+ resume(Effect.fail(handleErrnoException("FileSystem", "writeFile")(err, [path])));
395
+ } else {
396
+ resume(Effect.void);
397
+ }
398
+ });
399
+ } catch (err) {
400
+ resume(Effect.fail(handleBadArgument("writeFile")(err)));
401
+ }
402
+ });
403
+ var makeFileSystem = /* @__PURE__ */ Effect.map(/* @__PURE__ */ Effect.serviceOption(FileSystem.WatchBackend), (backend) => FileSystem.make({
404
+ access: access2,
405
+ chmod: chmod2,
406
+ chown: chown2,
407
+ copy,
408
+ copyFile: copyFile2,
409
+ glob: glob2,
410
+ link: link2,
411
+ makeDirectory,
412
+ makeTempDirectory,
413
+ makeTempDirectoryScoped,
414
+ makeTempFile,
415
+ makeTempFileScoped,
416
+ open: open2,
417
+ readDirectory,
418
+ readFile: readFile2,
419
+ readLink,
420
+ realPath,
421
+ remove,
422
+ rename: rename2,
423
+ stat: stat2,
424
+ symlink: symlink2,
425
+ truncate: truncate2,
426
+ utimes: utimes2,
427
+ watch(path, options) {
428
+ return watch2(backend, path, options);
429
+ },
430
+ writeFile: writeFile2
431
+ }));
432
+ var layer = /* @__PURE__ */ Layer.effect(FileSystem.FileSystem)(makeFileSystem);
433
+
434
+ export {
435
+ layer,
436
+ NodeFileSystem_exports
437
+ };
@@ -0,0 +1,34 @@
1
+ import {
2
+ fromDuplex,
3
+ fromReadable,
4
+ fromReadableChannel,
5
+ pipeThroughDuplex,
6
+ pipeThroughSimple,
7
+ toArrayBuffer,
8
+ toReadable,
9
+ toReadableNever,
10
+ toString,
11
+ toUint8Array
12
+ } from "./chunk-XH4U3JSV.js";
13
+ import {
14
+ __export
15
+ } from "./chunk-MLKGABMK.js";
16
+
17
+ // ../../../../node_modules/.pnpm/@effect+platform-node@4.0.0-rc.115_effect@4.0.0-rc.115_redis@6.2.1_@opentelemetry+api@1.9.1_/node_modules/@effect/platform-node/dist/NodeStream.js
18
+ var NodeStream_exports = {};
19
+ __export(NodeStream_exports, {
20
+ fromDuplex: () => fromDuplex,
21
+ fromReadable: () => fromReadable,
22
+ fromReadableChannel: () => fromReadableChannel,
23
+ pipeThroughDuplex: () => pipeThroughDuplex,
24
+ pipeThroughSimple: () => pipeThroughSimple,
25
+ toArrayBuffer: () => toArrayBuffer,
26
+ toReadable: () => toReadable,
27
+ toReadableNever: () => toReadableNever,
28
+ toString: () => toString,
29
+ toUint8Array: () => toUint8Array
30
+ });
31
+
32
+ export {
33
+ NodeStream_exports
34
+ };
@@ -0,0 +1,104 @@
1
+ import {
2
+ __export
3
+ } from "./chunk-MLKGABMK.js";
4
+
5
+ // ../../../../node_modules/.pnpm/@effect+platform-node@4.0.0-rc.115_effect@4.0.0-rc.115_redis@6.2.1_@opentelemetry+api@1.9.1_/node_modules/@effect/platform-node/dist/NodeWorkerRunner.js
6
+ var NodeWorkerRunner_exports = {};
7
+ __export(NodeWorkerRunner_exports, {
8
+ layer: () => layer
9
+ });
10
+ import * as Cause from "effect/Cause";
11
+ import * as Deferred from "effect/Deferred";
12
+ import * as Effect from "effect/Effect";
13
+ import * as Exit from "effect/Exit";
14
+ import * as Fiber from "effect/Fiber";
15
+ import * as Layer from "effect/Layer";
16
+ import * as Scope from "effect/Scope";
17
+ import { WorkerError, WorkerReceiveError, WorkerSpawnError } from "effect/unstable/workers/WorkerError";
18
+ import * as WorkerRunner from "effect/unstable/workers/WorkerRunner";
19
+ import * as WorkerThreads from "node:worker_threads";
20
+ var layer = /* @__PURE__ */ Layer.succeed(WorkerRunner.WorkerRunnerPlatform)({
21
+ start() {
22
+ return Effect.gen(function* () {
23
+ if (!WorkerThreads.parentPort && !process.send) {
24
+ return yield* new WorkerError({
25
+ reason: new WorkerSpawnError({
26
+ message: "not in a worker"
27
+ })
28
+ });
29
+ }
30
+ const sendRaw = WorkerThreads.parentPort ? (_portId, message, transfers) => WorkerThreads.parentPort.postMessage(message, transfers) : (_portId, message, _transfers) => process.send(message);
31
+ const sendUnsafe = (_portId, message, transfers) => sendRaw(_portId, [1, message], transfers);
32
+ const send = (_portId, message, transfers) => Effect.sync(() => sendUnsafe(_portId, message, transfers));
33
+ const run = (handler) => Effect.scopedWith(Effect.fnUntraced(function* (scope) {
34
+ const closeLatch = Deferred.makeUnsafe();
35
+ const trackFiber = Fiber.runIn(scope);
36
+ const services = yield* Effect.context();
37
+ const runFork = Effect.runForkWith(services);
38
+ const onExit = (exit) => {
39
+ if (exit._tag === "Failure" && !Cause.hasInterruptsOnly(exit.cause)) {
40
+ runFork(Effect.logError("unhandled error in worker", exit.cause));
41
+ }
42
+ };
43
+ const port = WorkerThreads.parentPort ?? process;
44
+ function onMessage(message) {
45
+ if (message[0] === 0) {
46
+ const result = handler(0, message[1]);
47
+ if (Effect.isEffect(result)) {
48
+ const fiber = runFork(result);
49
+ fiber.addObserver(onExit);
50
+ trackFiber(fiber);
51
+ }
52
+ } else {
53
+ if (WorkerThreads.parentPort) {
54
+ WorkerThreads.parentPort.close();
55
+ } else {
56
+ process.channel?.unref();
57
+ }
58
+ Deferred.doneUnsafe(closeLatch, Exit.void);
59
+ }
60
+ }
61
+ port.on("message", onMessage);
62
+ function onMessageError(cause) {
63
+ Deferred.doneUnsafe(closeLatch, new WorkerError({
64
+ reason: new WorkerReceiveError({
65
+ message: "received messageerror event",
66
+ cause
67
+ })
68
+ }));
69
+ }
70
+ function onError(cause) {
71
+ Deferred.doneUnsafe(closeLatch, new WorkerError({
72
+ reason: new WorkerReceiveError({
73
+ message: "received error event",
74
+ cause
75
+ })
76
+ }));
77
+ }
78
+ if (WorkerThreads.parentPort) {
79
+ WorkerThreads.parentPort.on("messageerror", onMessageError);
80
+ WorkerThreads.parentPort.on("error", onError);
81
+ }
82
+ yield* Scope.addFinalizer(scope, Effect.sync(() => {
83
+ port.off("message", onMessage);
84
+ if (WorkerThreads.parentPort) {
85
+ WorkerThreads.parentPort.off("messageerror", onMessageError);
86
+ WorkerThreads.parentPort.off("error", onError);
87
+ }
88
+ }));
89
+ sendRaw(0, [0]);
90
+ return yield* Deferred.await(closeLatch);
91
+ }));
92
+ return {
93
+ run,
94
+ send,
95
+ sendUnsafe
96
+ };
97
+ });
98
+ }
99
+ });
100
+
101
+ export {
102
+ layer,
103
+ NodeWorkerRunner_exports
104
+ };