@effect/platform-bun 0.87.0 → 4.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. package/dist/BunChildProcessSpawner.d.ts +7 -0
  2. package/dist/BunChildProcessSpawner.d.ts.map +1 -0
  3. package/dist/BunChildProcessSpawner.js +7 -0
  4. package/dist/BunChildProcessSpawner.js.map +1 -0
  5. package/dist/BunClusterHttp.d.ts +45 -0
  6. package/dist/BunClusterHttp.d.ts.map +1 -0
  7. package/dist/BunClusterHttp.js +48 -0
  8. package/dist/BunClusterHttp.js.map +1 -0
  9. package/dist/BunClusterSocket.d.ts +46 -0
  10. package/dist/BunClusterSocket.d.ts.map +1 -0
  11. package/dist/BunClusterSocket.js +60 -0
  12. package/dist/BunClusterSocket.js.map +1 -0
  13. package/dist/BunFileSystem.d.ts +8 -0
  14. package/dist/BunFileSystem.d.ts.map +1 -0
  15. package/dist/BunFileSystem.js.map +1 -0
  16. package/dist/BunHttpClient.d.ts +9 -0
  17. package/dist/BunHttpClient.d.ts.map +1 -0
  18. package/dist/BunHttpClient.js +9 -0
  19. package/dist/BunHttpClient.js.map +1 -0
  20. package/dist/BunHttpPlatform.d.ts +8 -0
  21. package/dist/BunHttpPlatform.d.ts.map +1 -0
  22. package/dist/BunHttpPlatform.js +35 -0
  23. package/dist/BunHttpPlatform.js.map +1 -0
  24. package/dist/BunHttpServer.d.ts +71 -0
  25. package/dist/BunHttpServer.d.ts.map +1 -0
  26. package/dist/{esm/internal/httpServer.js → BunHttpServer.js} +149 -118
  27. package/dist/BunHttpServer.js.map +1 -0
  28. package/dist/BunHttpServerRequest.d.ts +10 -0
  29. package/dist/BunHttpServerRequest.d.ts.map +1 -0
  30. package/dist/BunHttpServerRequest.js +6 -0
  31. package/dist/BunHttpServerRequest.js.map +1 -0
  32. package/dist/BunMultipart.d.ts +20 -0
  33. package/dist/BunMultipart.d.ts.map +1 -0
  34. package/dist/BunMultipart.js +17 -0
  35. package/dist/BunMultipart.js.map +1 -0
  36. package/dist/BunPath.d.ts +18 -0
  37. package/dist/BunPath.d.ts.map +1 -0
  38. package/dist/BunPath.js.map +1 -0
  39. package/dist/BunRedis.d.ts +35 -0
  40. package/dist/BunRedis.d.ts.map +1 -0
  41. package/dist/BunRedis.js +51 -0
  42. package/dist/BunRedis.js.map +1 -0
  43. package/dist/BunRuntime.d.ts +94 -0
  44. package/dist/BunRuntime.d.ts.map +1 -0
  45. package/dist/BunRuntime.js +33 -0
  46. package/dist/BunRuntime.js.map +1 -0
  47. package/dist/BunServices.d.ts +20 -0
  48. package/dist/BunServices.d.ts.map +1 -0
  49. package/dist/BunServices.js +12 -0
  50. package/dist/BunServices.js.map +1 -0
  51. package/dist/BunSink.d.ts.map +1 -0
  52. package/dist/BunSink.js.map +1 -0
  53. package/dist/BunSocket.d.ts +26 -0
  54. package/dist/BunSocket.d.ts.map +1 -0
  55. package/dist/BunSocket.js +18 -0
  56. package/dist/BunSocket.js.map +1 -0
  57. package/dist/BunSocketServer.d.ts.map +1 -0
  58. package/dist/BunSocketServer.js.map +1 -0
  59. package/dist/BunStdio.d.ts +8 -0
  60. package/dist/BunStdio.d.ts.map +1 -0
  61. package/dist/BunStdio.js +10 -0
  62. package/dist/BunStdio.js.map +1 -0
  63. package/dist/BunStream.d.ts +18 -0
  64. package/dist/BunStream.d.ts.map +1 -0
  65. package/dist/BunStream.js +44 -0
  66. package/dist/BunStream.js.map +1 -0
  67. package/dist/{dts/BunTerminal.d.ts → BunTerminal.d.ts} +2 -2
  68. package/dist/BunTerminal.d.ts.map +1 -0
  69. package/dist/{esm/BunTerminal.js → BunTerminal.js} +1 -1
  70. package/dist/BunTerminal.js.map +1 -0
  71. package/dist/BunWorker.d.ts +13 -0
  72. package/dist/BunWorker.d.ts.map +1 -0
  73. package/dist/BunWorker.js +59 -0
  74. package/dist/BunWorker.js.map +1 -0
  75. package/dist/BunWorkerRunner.d.ts +8 -0
  76. package/dist/BunWorkerRunner.d.ts.map +1 -0
  77. package/dist/BunWorkerRunner.js +88 -0
  78. package/dist/BunWorkerRunner.js.map +1 -0
  79. package/dist/index.d.ts +90 -0
  80. package/dist/index.d.ts.map +1 -0
  81. package/dist/{esm/index.js → index.js} +21 -7
  82. package/dist/index.js.map +1 -0
  83. package/package.json +51 -195
  84. package/src/BunChildProcessSpawner.ts +6 -0
  85. package/src/BunClusterHttp.ts +48 -35
  86. package/src/BunClusterSocket.ts +55 -21
  87. package/src/BunFileSystem.ts +3 -3
  88. package/src/BunHttpClient.ts +9 -0
  89. package/src/BunHttpPlatform.ts +28 -9
  90. package/src/BunHttpServer.ts +510 -58
  91. package/src/BunHttpServerRequest.ts +4 -4
  92. package/src/BunMultipart.ts +22 -11
  93. package/src/BunPath.ts +5 -6
  94. package/src/BunRedis.ts +74 -0
  95. package/src/BunRuntime.ts +95 -3
  96. package/src/BunServices.ts +33 -0
  97. package/src/BunSocket.ts +20 -10
  98. package/src/BunStdio.ts +12 -0
  99. package/src/BunStream.ts +51 -0
  100. package/src/BunTerminal.ts +2 -2
  101. package/src/BunWorker.ts +63 -21
  102. package/src/BunWorkerRunner.ts +92 -11
  103. package/src/index.ts +37 -19
  104. package/BunClusterHttp/package.json +0 -6
  105. package/BunClusterSocket/package.json +0 -6
  106. package/BunCommandExecutor/package.json +0 -6
  107. package/BunContext/package.json +0 -6
  108. package/BunFileSystem/ParcelWatcher/package.json +0 -6
  109. package/BunFileSystem/package.json +0 -6
  110. package/BunHttpPlatform/package.json +0 -6
  111. package/BunHttpServer/package.json +0 -6
  112. package/BunHttpServerRequest/package.json +0 -6
  113. package/BunKeyValueStore/package.json +0 -6
  114. package/BunMultipart/package.json +0 -6
  115. package/BunPath/package.json +0 -6
  116. package/BunRuntime/package.json +0 -6
  117. package/BunSink/package.json +0 -6
  118. package/BunSocket/package.json +0 -6
  119. package/BunSocketServer/package.json +0 -6
  120. package/BunStream/package.json +0 -6
  121. package/BunTerminal/package.json +0 -6
  122. package/BunWorker/package.json +0 -6
  123. package/BunWorkerRunner/package.json +0 -6
  124. package/dist/cjs/BunClusterHttp.js +0 -59
  125. package/dist/cjs/BunClusterHttp.js.map +0 -1
  126. package/dist/cjs/BunClusterSocket.js +0 -55
  127. package/dist/cjs/BunClusterSocket.js.map +0 -1
  128. package/dist/cjs/BunCommandExecutor.js +0 -18
  129. package/dist/cjs/BunCommandExecutor.js.map +0 -1
  130. package/dist/cjs/BunContext.js +0 -20
  131. package/dist/cjs/BunContext.js.map +0 -1
  132. package/dist/cjs/BunFileSystem/ParcelWatcher.js +0 -18
  133. package/dist/cjs/BunFileSystem/ParcelWatcher.js.map +0 -1
  134. package/dist/cjs/BunFileSystem.js +0 -18
  135. package/dist/cjs/BunFileSystem.js.map +0 -1
  136. package/dist/cjs/BunHttpPlatform.js +0 -19
  137. package/dist/cjs/BunHttpPlatform.js.map +0 -1
  138. package/dist/cjs/BunHttpServer.js +0 -48
  139. package/dist/cjs/BunHttpServer.js.map +0 -1
  140. package/dist/cjs/BunHttpServerRequest.js +0 -14
  141. package/dist/cjs/BunHttpServerRequest.js.map +0 -1
  142. package/dist/cjs/BunKeyValueStore.js +0 -18
  143. package/dist/cjs/BunKeyValueStore.js.map +0 -1
  144. package/dist/cjs/BunMultipart.js +0 -19
  145. package/dist/cjs/BunMultipart.js.map +0 -1
  146. package/dist/cjs/BunPath.js +0 -28
  147. package/dist/cjs/BunPath.js.map +0 -1
  148. package/dist/cjs/BunRuntime.js +0 -18
  149. package/dist/cjs/BunRuntime.js.map +0 -1
  150. package/dist/cjs/BunSink.js +0 -17
  151. package/dist/cjs/BunSink.js.map +0 -1
  152. package/dist/cjs/BunSocket.js +0 -45
  153. package/dist/cjs/BunSocket.js.map +0 -1
  154. package/dist/cjs/BunSocketServer.js +0 -17
  155. package/dist/cjs/BunSocketServer.js.map +0 -1
  156. package/dist/cjs/BunStream.js +0 -17
  157. package/dist/cjs/BunStream.js.map +0 -1
  158. package/dist/cjs/BunTerminal.js +0 -23
  159. package/dist/cjs/BunTerminal.js.map +0 -1
  160. package/dist/cjs/BunWorker.js +0 -29
  161. package/dist/cjs/BunWorker.js.map +0 -1
  162. package/dist/cjs/BunWorkerRunner.js +0 -21
  163. package/dist/cjs/BunWorkerRunner.js.map +0 -1
  164. package/dist/cjs/index.js +0 -46
  165. package/dist/cjs/index.js.map +0 -1
  166. package/dist/cjs/internal/httpPlatform.js +0 -36
  167. package/dist/cjs/internal/httpPlatform.js.map +0 -1
  168. package/dist/cjs/internal/httpServer.js +0 -356
  169. package/dist/cjs/internal/httpServer.js.map +0 -1
  170. package/dist/cjs/internal/multipart.js +0 -160
  171. package/dist/cjs/internal/multipart.js.map +0 -1
  172. package/dist/cjs/internal/worker.js +0 -63
  173. package/dist/cjs/internal/worker.js.map +0 -1
  174. package/dist/cjs/internal/workerRunner.js +0 -84
  175. package/dist/cjs/internal/workerRunner.js.map +0 -1
  176. package/dist/dts/BunClusterHttp.d.ts +0 -30
  177. package/dist/dts/BunClusterHttp.d.ts.map +0 -1
  178. package/dist/dts/BunClusterSocket.d.ts +0 -35
  179. package/dist/dts/BunClusterSocket.d.ts.map +0 -1
  180. package/dist/dts/BunCommandExecutor.d.ts +0 -9
  181. package/dist/dts/BunCommandExecutor.d.ts.map +0 -1
  182. package/dist/dts/BunContext.d.ts +0 -20
  183. package/dist/dts/BunContext.d.ts.map +0 -1
  184. package/dist/dts/BunFileSystem/ParcelWatcher.d.ts +0 -8
  185. package/dist/dts/BunFileSystem/ParcelWatcher.d.ts.map +0 -1
  186. package/dist/dts/BunFileSystem.d.ts +0 -8
  187. package/dist/dts/BunFileSystem.d.ts.map +0 -1
  188. package/dist/dts/BunHttpPlatform.d.ts +0 -19
  189. package/dist/dts/BunHttpPlatform.d.ts.map +0 -1
  190. package/dist/dts/BunHttpServer.d.ts +0 -72
  191. package/dist/dts/BunHttpServer.d.ts.map +0 -1
  192. package/dist/dts/BunHttpServerRequest.d.ts +0 -10
  193. package/dist/dts/BunHttpServerRequest.d.ts.map +0 -1
  194. package/dist/dts/BunKeyValueStore.d.ts +0 -9
  195. package/dist/dts/BunKeyValueStore.d.ts.map +0 -1
  196. package/dist/dts/BunMultipart.d.ts +0 -20
  197. package/dist/dts/BunMultipart.d.ts.map +0 -1
  198. package/dist/dts/BunPath.d.ts +0 -21
  199. package/dist/dts/BunPath.d.ts.map +0 -1
  200. package/dist/dts/BunRuntime.d.ts +0 -7
  201. package/dist/dts/BunRuntime.d.ts.map +0 -1
  202. package/dist/dts/BunSink.d.ts.map +0 -1
  203. package/dist/dts/BunSocket.d.ts +0 -22
  204. package/dist/dts/BunSocket.d.ts.map +0 -1
  205. package/dist/dts/BunSocketServer.d.ts.map +0 -1
  206. package/dist/dts/BunStream.d.ts +0 -8
  207. package/dist/dts/BunStream.d.ts.map +0 -1
  208. package/dist/dts/BunTerminal.d.ts.map +0 -1
  209. package/dist/dts/BunWorker.d.ts +0 -26
  210. package/dist/dts/BunWorker.d.ts.map +0 -1
  211. package/dist/dts/BunWorkerRunner.d.ts +0 -17
  212. package/dist/dts/BunWorkerRunner.d.ts.map +0 -1
  213. package/dist/dts/index.d.ts +0 -77
  214. package/dist/dts/index.d.ts.map +0 -1
  215. package/dist/dts/internal/httpPlatform.d.ts +0 -2
  216. package/dist/dts/internal/httpPlatform.d.ts.map +0 -1
  217. package/dist/dts/internal/httpServer.d.ts +0 -2
  218. package/dist/dts/internal/httpServer.d.ts.map +0 -1
  219. package/dist/dts/internal/multipart.d.ts +0 -2
  220. package/dist/dts/internal/multipart.d.ts.map +0 -1
  221. package/dist/dts/internal/worker.d.ts +0 -2
  222. package/dist/dts/internal/worker.d.ts.map +0 -1
  223. package/dist/dts/internal/workerRunner.d.ts +0 -2
  224. package/dist/dts/internal/workerRunner.d.ts.map +0 -1
  225. package/dist/esm/BunClusterHttp.js +0 -50
  226. package/dist/esm/BunClusterHttp.js.map +0 -1
  227. package/dist/esm/BunClusterSocket.js +0 -45
  228. package/dist/esm/BunClusterSocket.js.map +0 -1
  229. package/dist/esm/BunCommandExecutor.js +0 -10
  230. package/dist/esm/BunCommandExecutor.js.map +0 -1
  231. package/dist/esm/BunContext.js +0 -13
  232. package/dist/esm/BunContext.js.map +0 -1
  233. package/dist/esm/BunFileSystem/ParcelWatcher.js +0 -10
  234. package/dist/esm/BunFileSystem/ParcelWatcher.js.map +0 -1
  235. package/dist/esm/BunFileSystem.js.map +0 -1
  236. package/dist/esm/BunHttpPlatform.js +0 -12
  237. package/dist/esm/BunHttpPlatform.js.map +0 -1
  238. package/dist/esm/BunHttpServer.js +0 -41
  239. package/dist/esm/BunHttpServer.js.map +0 -1
  240. package/dist/esm/BunHttpServerRequest.js +0 -7
  241. package/dist/esm/BunHttpServerRequest.js.map +0 -1
  242. package/dist/esm/BunKeyValueStore.js +0 -10
  243. package/dist/esm/BunKeyValueStore.js.map +0 -1
  244. package/dist/esm/BunMultipart.js +0 -12
  245. package/dist/esm/BunMultipart.js.map +0 -1
  246. package/dist/esm/BunPath.js.map +0 -1
  247. package/dist/esm/BunRuntime.js +0 -10
  248. package/dist/esm/BunRuntime.js.map +0 -1
  249. package/dist/esm/BunSink.js.map +0 -1
  250. package/dist/esm/BunSocket.js +0 -20
  251. package/dist/esm/BunSocket.js.map +0 -1
  252. package/dist/esm/BunSocketServer.js.map +0 -1
  253. package/dist/esm/BunStream.js +0 -8
  254. package/dist/esm/BunStream.js.map +0 -1
  255. package/dist/esm/BunTerminal.js.map +0 -1
  256. package/dist/esm/BunWorker.js +0 -22
  257. package/dist/esm/BunWorker.js.map +0 -1
  258. package/dist/esm/BunWorkerRunner.js +0 -13
  259. package/dist/esm/BunWorkerRunner.js.map +0 -1
  260. package/dist/esm/index.js.map +0 -1
  261. package/dist/esm/internal/httpPlatform.js +0 -29
  262. package/dist/esm/internal/httpPlatform.js.map +0 -1
  263. package/dist/esm/internal/httpServer.js.map +0 -1
  264. package/dist/esm/internal/multipart.js +0 -151
  265. package/dist/esm/internal/multipart.js.map +0 -1
  266. package/dist/esm/internal/worker.js +0 -54
  267. package/dist/esm/internal/worker.js.map +0 -1
  268. package/dist/esm/internal/workerRunner.js +0 -77
  269. package/dist/esm/internal/workerRunner.js.map +0 -1
  270. package/dist/esm/package.json +0 -4
  271. package/index/package.json +0 -6
  272. package/src/BunCommandExecutor.ts +0 -13
  273. package/src/BunContext.ts +0 -40
  274. package/src/BunFileSystem/ParcelWatcher.ts +0 -12
  275. package/src/BunKeyValueStore.ts +0 -15
  276. package/src/internal/httpPlatform.ts +0 -25
  277. package/src/internal/httpServer.ts +0 -478
  278. package/src/internal/multipart.ts +0 -149
  279. package/src/internal/worker.ts +0 -68
  280. package/src/internal/workerRunner.ts +0 -87
  281. /package/dist/{esm/BunFileSystem.js → BunFileSystem.js} +0 -0
  282. /package/dist/{esm/BunPath.js → BunPath.js} +0 -0
  283. /package/dist/{dts/BunSink.d.ts → BunSink.d.ts} +0 -0
  284. /package/dist/{esm/BunSink.js → BunSink.js} +0 -0
  285. /package/dist/{dts/BunSocketServer.d.ts → BunSocketServer.d.ts} +0 -0
  286. /package/dist/{esm/BunSocketServer.js → BunSocketServer.js} +0 -0
@@ -1,28 +1,34 @@
1
- import * as Cookies from "@effect/platform/Cookies";
2
- import * as Etag from "@effect/platform/Etag";
3
- import * as FetchHttpClient from "@effect/platform/FetchHttpClient";
4
- import * as Headers from "@effect/platform/Headers";
5
- import * as App from "@effect/platform/HttpApp";
6
- import * as IncomingMessage from "@effect/platform/HttpIncomingMessage";
7
- import * as Server from "@effect/platform/HttpServer";
8
- import * as Error from "@effect/platform/HttpServerError";
9
- import * as ServerRequest from "@effect/platform/HttpServerRequest";
10
- import * as Socket from "@effect/platform/Socket";
11
- import * as UrlParams from "@effect/platform/UrlParams";
12
1
  import * as Config from "effect/Config";
13
2
  import * as Deferred from "effect/Deferred";
14
3
  import * as Effect from "effect/Effect";
15
4
  import * as Exit from "effect/Exit";
5
+ import * as Fiber from "effect/Fiber";
16
6
  import * as FiberSet from "effect/FiberSet";
7
+ import { flow } from "effect/Function";
17
8
  import * as Inspectable from "effect/Inspectable";
18
9
  import * as Layer from "effect/Layer";
19
- import * as Option from "effect/Option";
10
+ import * as ServiceMap from "effect/ServiceMap";
20
11
  import * as Stream from "effect/Stream";
21
- import * as BunContext from "../BunContext.js";
22
- import * as Platform from "../BunHttpPlatform.js";
23
- import * as MultipartBun from "./multipart.js";
24
- /** @internal */
25
- export const make = options => Effect.gen(function* () {
12
+ import * as Cookies from "effect/unstable/http/Cookies";
13
+ import * as Etag from "effect/unstable/http/Etag";
14
+ import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient";
15
+ import * as Headers from "effect/unstable/http/Headers";
16
+ import * as HttpEffect from "effect/unstable/http/HttpEffect";
17
+ import * as IncomingMessage from "effect/unstable/http/HttpIncomingMessage";
18
+ import * as Server from "effect/unstable/http/HttpServer";
19
+ import * as Error from "effect/unstable/http/HttpServerError";
20
+ import * as ServerRequest from "effect/unstable/http/HttpServerRequest";
21
+ import * as UrlParams from "effect/unstable/http/UrlParams";
22
+ import * as Socket from "effect/unstable/socket/Socket";
23
+ import * as Platform from "./BunHttpPlatform.js";
24
+ import * as BunMultipart from "./BunMultipart.js";
25
+ import * as BunServices from "./BunServices.js";
26
+ import * as BunStream from "./BunStream.js";
27
+ /**
28
+ * @since 1.0.0
29
+ * @category Constructors
30
+ */
31
+ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
26
32
  const handlerStack = [function (_request, _server) {
27
33
  return new Response("not found", {
28
34
  status: 404
@@ -33,63 +39,62 @@ export const make = options => Effect.gen(function* () {
33
39
  fetch: handlerStack[0],
34
40
  websocket: {
35
41
  open(ws) {
36
- Deferred.unsafeDone(ws.data.deferred, Exit.succeed(ws));
42
+ Deferred.doneUnsafe(ws.data.deferred, Exit.succeed(ws));
37
43
  },
38
44
  message(ws, message) {
39
45
  ws.data.run(message);
40
46
  },
41
47
  close(ws, code, closeReason) {
42
- Deferred.unsafeDone(ws.data.closeDeferred, Socket.defaultCloseCodeIsError(code) ? Exit.fail(new Socket.SocketCloseError({
43
- reason: "Close",
44
- code,
45
- closeReason
48
+ Deferred.doneUnsafe(ws.data.closeDeferred, Socket.defaultCloseCodeIsError(code) ? Exit.fail(new Socket.SocketError({
49
+ reason: new Socket.SocketCloseError({
50
+ code,
51
+ closeReason
52
+ })
46
53
  })) : Exit.void);
47
54
  }
48
55
  }
49
56
  });
50
- yield* Effect.addFinalizer(() => Effect.sync(() => {
51
- server.stop();
52
- }));
57
+ yield* Effect.addFinalizer(() => Effect.promise(() => server.stop()));
53
58
  return Server.make({
54
59
  address: {
55
60
  _tag: "TcpAddress",
56
61
  port: server.port,
57
62
  hostname: server.hostname
58
63
  },
59
- serve(httpApp, middleware) {
60
- return Effect.gen(function* () {
61
- const runFork = yield* FiberSet.makeRuntime();
62
- const runtime = yield* Effect.runtime();
63
- const app = App.toHandled(httpApp, (request, response) => Effect.sync(() => {
64
- ;
65
- request.resolve(makeResponse(request, response, runtime));
66
- }), middleware);
67
- function handler(request, server) {
68
- return new Promise((resolve, _reject) => {
69
- const fiber = runFork(Effect.provideService(app, ServerRequest.HttpServerRequest, new ServerRequestImpl(request, resolve, removeHost(request.url), server)));
70
- request.signal.addEventListener("abort", () => {
71
- runFork(fiber.interruptAsFork(Error.clientAbortFiberId));
72
- }, {
73
- once: true
74
- });
64
+ serve: Effect.fnUntraced(function* (httpApp, middleware) {
65
+ const scope = yield* Effect.scope;
66
+ const services = yield* Effect.services();
67
+ const httpEffect = HttpEffect.toHandled(httpApp, (request, response) => Effect.sync(() => {
68
+ ;
69
+ request.resolve(makeResponse(request, response, services, scope));
70
+ }), middleware);
71
+ function handler(request, server) {
72
+ return new Promise((resolve, _reject) => {
73
+ const map = new Map(services.mapUnsafe);
74
+ map.set(ServerRequest.HttpServerRequest.key, new BunServerRequest(request, resolve, removeHost(request.url), server));
75
+ const fiber = Fiber.runIn(Effect.runForkWith(ServiceMap.makeUnsafe(map))(httpEffect), scope);
76
+ request.signal.addEventListener("abort", () => {
77
+ fiber.interruptUnsafe(Error.clientAbortFiberId);
78
+ }, {
79
+ once: true
75
80
  });
76
- }
77
- yield* Effect.acquireRelease(Effect.sync(() => {
78
- handlerStack.push(handler);
79
- server.reload({
80
- fetch: handler
81
- });
82
- }), () => Effect.sync(() => {
83
- handlerStack.pop();
84
- server.reload({
85
- fetch: handlerStack[handlerStack.length - 1]
86
- });
87
- }));
88
- });
89
- }
81
+ });
82
+ }
83
+ yield* Effect.acquireRelease(Effect.sync(() => {
84
+ handlerStack.push(handler);
85
+ server.reload({
86
+ fetch: handler
87
+ });
88
+ }), () => Effect.sync(() => {
89
+ handlerStack.pop();
90
+ server.reload({
91
+ fetch: handlerStack[handlerStack.length - 1]
92
+ });
93
+ }));
94
+ })
90
95
  });
91
96
  });
92
- const makeResponse = (request, response, runtime) => {
97
+ const makeResponse = (request, response, services, scope) => {
93
98
  const fields = {
94
99
  headers: new globalThis.Headers(response.headers),
95
100
  status: response.status
@@ -105,7 +110,7 @@ const makeResponse = (request, response, runtime) => {
105
110
  if (request.method === "HEAD") {
106
111
  return new Response(undefined, fields);
107
112
  }
108
- response = App.unsafeEjectStreamScope(response);
113
+ response = HttpEffect.scopeTransferToStream(response);
109
114
  const body = response.body;
110
115
  switch (body._tag) {
111
116
  case "Empty":
@@ -129,56 +134,74 @@ const makeResponse = (request, response, runtime) => {
129
134
  }
130
135
  case "Stream":
131
136
  {
132
- return new Response(Stream.toReadableStreamRuntime(body.stream, runtime), fields);
137
+ return new Response(Stream.toReadableStreamWith(Stream.unwrap(Effect.withFiber(fiber => {
138
+ Fiber.runIn(fiber, scope);
139
+ return Effect.succeed(body.stream);
140
+ })), services), fields);
133
141
  }
134
142
  }
135
143
  };
136
- /** @internal */
137
- export const layerServer = options => Layer.scoped(Server.HttpServer, make(options));
138
- /** @internal */
139
- export const layerContext = /*#__PURE__*/Layer.mergeAll(Platform.layer, Etag.layerWeak, BunContext.layer);
140
- /** @internal */
141
- export const layer = options => Layer.mergeAll(Layer.scoped(Server.HttpServer, make(options)), layerContext);
142
- /** @internal */
143
- export const layerTest = /*#__PURE__*/Server.layerTestClient.pipe(/*#__PURE__*/Layer.provide(/*#__PURE__*/FetchHttpClient.layer.pipe(/*#__PURE__*/Layer.provide(/*#__PURE__*/Layer.succeed(FetchHttpClient.RequestInit, {
144
+ /**
145
+ * @since 1.0.0
146
+ * @category Layers
147
+ */
148
+ export const layerServer = /*#__PURE__*/flow(make, /*#__PURE__*/Layer.effect(Server.HttpServer));
149
+ /**
150
+ * @since 1.0.0
151
+ * @category Layers
152
+ */
153
+ export const layerHttpServices = /*#__PURE__*/Layer.mergeAll(Platform.layer, Etag.layerWeak, BunServices.layer);
154
+ /**
155
+ * @since 1.0.0
156
+ * @category Layers
157
+ */
158
+ export const layer = options => Layer.mergeAll(layerServer(options), layerHttpServices);
159
+ /**
160
+ * @since 1.0.0
161
+ * @category Layers
162
+ */
163
+ export const layerTest = /*#__PURE__*/Server.layerTestClient.pipe(/*#__PURE__*/Layer.provide(/*#__PURE__*/FetchHttpClient.layer.pipe(/*#__PURE__*/Layer.provide(/*#__PURE__*/Layer.succeed(FetchHttpClient.RequestInit)({
144
164
  keepalive: false
145
165
  })))), /*#__PURE__*/Layer.provideMerge(/*#__PURE__*/layer({
146
166
  port: 0
147
167
  })));
148
- /** @internal */
149
- export const layerConfig = options => Layer.mergeAll(Layer.scoped(Server.HttpServer, Effect.flatMap(Config.unwrap(options), make)), layerContext);
168
+ /**
169
+ * @since 1.0.0
170
+ * @category Layers
171
+ */
172
+ export const layerConfig = options => Layer.mergeAll(Layer.effect(Server.HttpServer)(Effect.flatMap(Config.unwrap(options).asEffect(), make)), layerHttpServices);
150
173
  function wsDefaultRun(_) {
151
174
  this.buffer.push(_);
152
175
  }
153
- class ServerRequestImpl extends Inspectable.Class {
176
+ class BunServerRequest extends Inspectable.Class {
177
+ [ServerRequest.TypeId];
178
+ [IncomingMessage.TypeId];
154
179
  source;
155
180
  resolve;
156
181
  url;
157
182
  bunServer;
158
183
  headersOverride;
159
184
  remoteAddressOverride;
160
- [ServerRequest.TypeId];
161
- [IncomingMessage.TypeId];
162
185
  constructor(source, resolve, url, bunServer, headersOverride, remoteAddressOverride) {
163
186
  super();
187
+ this[ServerRequest.TypeId] = ServerRequest.TypeId;
188
+ this[IncomingMessage.TypeId] = IncomingMessage.TypeId;
164
189
  this.source = source;
165
190
  this.resolve = resolve;
166
191
  this.url = url;
167
192
  this.bunServer = bunServer;
168
193
  this.headersOverride = headersOverride;
169
194
  this.remoteAddressOverride = remoteAddressOverride;
170
- this[ServerRequest.TypeId] = ServerRequest.TypeId;
171
- this[IncomingMessage.TypeId] = IncomingMessage.TypeId;
172
195
  }
173
196
  toJSON() {
174
197
  return IncomingMessage.inspect(this, {
175
- _id: "@effect/platform/HttpServerRequest",
198
+ _id: "HttpServerRequest",
176
199
  method: this.method,
177
200
  url: this.originalUrl
178
201
  });
179
202
  }
180
203
  modify(options) {
181
- return new ServerRequestImpl(this.source, this.resolve, options.url ?? this.url, this.bunServer, options.headers ?? this.headersOverride, options.remoteAddress ?? this.remoteAddressOverride);
204
+ return new BunServerRequest(this.source, this.resolve, options.url ?? this.url, this.bunServer, options.headers ?? this.headersOverride, options.remoteAddress ?? this.remoteAddressOverride);
182
205
  }
183
206
  get method() {
184
207
  return this.source.method.toUpperCase();
@@ -187,7 +210,7 @@ class ServerRequestImpl extends Inspectable.Class {
187
210
  return this.source.url;
188
211
  }
189
212
  get remoteAddress() {
190
- return this.remoteAddressOverride ? Option.some(this.remoteAddressOverride) : Option.fromNullable(this.bunServer.requestIP(this.source)?.address);
213
+ return this.remoteAddressOverride ?? this.bunServer.requestIP(this.source)?.address;
191
214
  }
192
215
  get headers() {
193
216
  this.headersOverride ??= Headers.fromInput(this.source.headers);
@@ -201,14 +224,19 @@ class ServerRequestImpl extends Inspectable.Class {
201
224
  return this.cachedCookies = Cookies.parseHeader(this.headers.cookie ?? "");
202
225
  }
203
226
  get stream() {
204
- return this.source.body ? Stream.fromReadableStream(() => this.source.body, cause => new Error.RequestError({
205
- request: this,
206
- reason: "Decode",
207
- cause
208
- })) : Stream.fail(new Error.RequestError({
209
- request: this,
210
- reason: "Decode",
211
- description: "can not create stream from empty body"
227
+ return this.source.body ? BunStream.fromReadableStream({
228
+ evaluate: () => this.source.body,
229
+ onError: cause => new Error.HttpServerError({
230
+ reason: new Error.RequestParseError({
231
+ request: this,
232
+ cause
233
+ })
234
+ })
235
+ }) : Stream.fail(new Error.HttpServerError({
236
+ reason: new Error.RequestParseError({
237
+ request: this,
238
+ description: "can not create stream from empty body"
239
+ })
212
240
  }));
213
241
  }
214
242
  textEffect;
@@ -218,31 +246,34 @@ class ServerRequestImpl extends Inspectable.Class {
218
246
  }
219
247
  this.textEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
220
248
  try: () => this.source.text(),
221
- catch: cause => new Error.RequestError({
222
- request: this,
223
- reason: "Decode",
224
- cause
249
+ catch: cause => new Error.HttpServerError({
250
+ reason: new Error.RequestParseError({
251
+ request: this,
252
+ cause
253
+ })
225
254
  })
226
255
  })));
227
256
  return this.textEffect;
228
257
  }
229
258
  get json() {
230
- return Effect.tryMap(this.text, {
231
- try: _ => JSON.parse(_),
232
- catch: cause => new Error.RequestError({
233
- request: this,
234
- reason: "Decode",
235
- cause
259
+ return Effect.flatMap(this.text, _ => Effect.try({
260
+ try: () => JSON.parse(_),
261
+ catch: cause => new Error.HttpServerError({
262
+ reason: new Error.RequestParseError({
263
+ request: this,
264
+ cause
265
+ })
236
266
  })
237
- });
267
+ }));
238
268
  }
239
269
  get urlParamsBody() {
240
270
  return Effect.flatMap(this.text, _ => Effect.try({
241
271
  try: () => UrlParams.fromInput(new URLSearchParams(_)),
242
- catch: cause => new Error.RequestError({
243
- request: this,
244
- reason: "Decode",
245
- cause
272
+ catch: cause => new Error.HttpServerError({
273
+ reason: new Error.RequestParseError({
274
+ request: this,
275
+ cause
276
+ })
246
277
  })
247
278
  }));
248
279
  }
@@ -251,11 +282,11 @@ class ServerRequestImpl extends Inspectable.Class {
251
282
  if (this.multipartEffect) {
252
283
  return this.multipartEffect;
253
284
  }
254
- this.multipartEffect = Effect.runSync(Effect.cached(MultipartBun.persisted(this.source)));
285
+ this.multipartEffect = Effect.runSync(Effect.cached(BunMultipart.persisted(this.source)));
255
286
  return this.multipartEffect;
256
287
  }
257
288
  get multipartStream() {
258
- return MultipartBun.stream(this.source);
289
+ return BunMultipart.stream(this.source);
259
290
  }
260
291
  arrayBufferEffect;
261
292
  get arrayBuffer() {
@@ -264,16 +295,20 @@ class ServerRequestImpl extends Inspectable.Class {
264
295
  }
265
296
  this.arrayBufferEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
266
297
  try: () => this.source.arrayBuffer(),
267
- catch: cause => new Error.RequestError({
268
- request: this,
269
- reason: "Decode",
270
- cause
298
+ catch: cause => new Error.HttpServerError({
299
+ reason: new Error.RequestParseError({
300
+ request: this,
301
+ cause
302
+ })
271
303
  })
272
304
  })));
273
305
  return this.arrayBufferEffect;
274
306
  }
275
307
  get upgrade() {
276
- return Effect.flatMap(Effect.all([Deferred.make(), Deferred.make(), Effect.makeSemaphore(1)]), ([deferred, closeDeferred, semaphore]) => Effect.async(resume => {
308
+ return Effect.callback(resume => {
309
+ const deferred = Deferred.makeUnsafe();
310
+ const closeDeferred = Deferred.makeUnsafe();
311
+ const semaphore = Effect.makeSemaphoreUnsafe(1);
277
312
  const success = this.bunServer.upgrade(this.source, {
278
313
  data: {
279
314
  deferred,
@@ -283,10 +318,11 @@ class ServerRequestImpl extends Inspectable.Class {
283
318
  }
284
319
  });
285
320
  if (!success) {
286
- resume(Effect.fail(new Error.RequestError({
287
- request: this,
288
- reason: "Decode",
289
- description: "Not an upgradeable ServerRequest"
321
+ resume(Effect.fail(new Error.HttpServerError({
322
+ reason: new Error.RequestParseError({
323
+ request: this,
324
+ description: "Not an upgradeable ServerRequest"
325
+ })
290
326
  })));
291
327
  return;
292
328
  }
@@ -316,10 +352,7 @@ class ServerRequestImpl extends Inspectable.Class {
316
352
  ws.data.buffer.length = 0;
317
353
  if (opts?.onOpen) yield* opts.onOpen;
318
354
  return yield* FiberSet.join(set);
319
- }, Effect.scoped, Effect.onExit(exit => {
320
- ws.close(exit._tag === "Success" ? 1000 : 1011);
321
- return Effect.void;
322
- }), Effect.raceFirst(Deferred.await(closeDeferred)), semaphore.withPermits(1));
355
+ }, Effect.scoped, Effect.onExit(exit => Effect.sync(() => ws.close(exit._tag === "Success" ? 1000 : 1011))), Effect.raceFirst(Deferred.await(closeDeferred)), semaphore.withPermits(1));
323
356
  const encoder = new TextEncoder();
324
357
  const run = (handler, opts) => runRaw(data => typeof data === "string" ? handler(encoder.encode(data)) : handler(data), opts);
325
358
  return Socket.Socket.of({
@@ -329,7 +362,7 @@ class ServerRequestImpl extends Inspectable.Class {
329
362
  writer
330
363
  });
331
364
  }));
332
- }));
365
+ });
333
366
  }
334
367
  }
335
368
  const removeHost = url => {
@@ -339,6 +372,4 @@ const removeHost = url => {
339
372
  const index = url.indexOf("/", url.indexOf("//") + 2);
340
373
  return index === -1 ? "/" : url.slice(index);
341
374
  };
342
- /** @internal */
343
- export const requestSource = self => self.source;
344
- //# sourceMappingURL=httpServer.js.map
375
+ //# sourceMappingURL=BunHttpServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunHttpServer.js","names":["Config","Deferred","Effect","Exit","Fiber","FiberSet","flow","Inspectable","Layer","ServiceMap","Stream","Cookies","Etag","FetchHttpClient","Headers","HttpEffect","IncomingMessage","Server","Error","ServerRequest","UrlParams","Socket","Platform","BunMultipart","BunServices","BunStream","make","fnUntraced","options","handlerStack","_request","_server","Response","status","server","Bun","serve","fetch","websocket","open","ws","doneUnsafe","data","deferred","succeed","message","run","close","code","closeReason","closeDeferred","defaultCloseCodeIsError","fail","SocketError","reason","SocketCloseError","void","addFinalizer","promise","stop","address","_tag","port","hostname","httpApp","middleware","scope","services","httpEffect","toHandled","request","response","sync","resolve","makeResponse","handler","Promise","_reject","map","Map","mapUnsafe","set","HttpServerRequest","key","BunServerRequest","removeHost","url","fiber","runIn","runForkWith","makeUnsafe","signal","addEventListener","interruptUnsafe","clientAbortFiberId","once","acquireRelease","push","reload","pop","length","fields","headers","globalThis","isEmpty","cookies","header","toSetCookieHeaders","append","statusText","undefined","method","scopeTransferToStream","body","value","entries","formData","toReadableStreamWith","unwrap","withFiber","stream","layerServer","effect","HttpServer","layerHttpServices","mergeAll","layer","layerWeak","layerTest","layerTestClient","pipe","provide","RequestInit","keepalive","provideMerge","layerConfig","flatMap","asEffect","wsDefaultRun","_","buffer","Class","TypeId","source","bunServer","headersOverride","remoteAddressOverride","constructor","toJSON","inspect","_id","originalUrl","modify","remoteAddress","toUpperCase","requestIP","fromInput","cachedCookies","parseHeader","cookie","fromReadableStream","evaluate","onError","cause","HttpServerError","RequestParseError","description","textEffect","text","runSync","cached","tryPromise","try","catch","json","JSON","parse","urlParamsBody","URLSearchParams","multipartEffect","multipart","persisted","multipartStream","arrayBufferEffect","arrayBuffer","upgrade","callback","resume","semaphore","makeSemaphoreUnsafe","success","await","write","chunk","sendText","isCloseEvent","sendBinary","writer","runRaw","opts","runtime","result","isEffect","forEach","onOpen","join","scoped","onExit","exit","raceFirst","withPermits","encoder","TextEncoder","encode","of","index","indexOf","slice"],"sources":["../src/BunHttpServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { HttpServerRequest } from "effect/unstable/http/HttpServerRequest";
5
+ /**
6
+ * @since 1.0.0
7
+ * @category Accessors
8
+ */
9
+ export declare const toBunServerRequest: <T extends string = string>(self: HttpServerRequest) => Bun.BunRequest<T>;
10
+ //# sourceMappingURL=BunHttpServerRequest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunHttpServerRequest.d.ts","sourceRoot":"","sources":["../src/BunHttpServerRequest.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAE/E;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,iBAAiB,KAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAClF,CAAA"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @since 1.0.0
3
+ * @category Accessors
4
+ */
5
+ export const toBunServerRequest = self => self.source;
6
+ //# sourceMappingURL=BunHttpServerRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunHttpServerRequest.js","names":["toBunServerRequest","self","source"],"sources":["../src/BunHttpServerRequest.ts"],"sourcesContent":[null],"mappings":"AAKA;;;;AAIA,OAAO,MAAMA,kBAAkB,GAA+BC,IAAuB,IAClFA,IAAY,CAACC,MAAM","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type * as Effect from "effect/Effect";
5
+ import type { FileSystem } from "effect/FileSystem";
6
+ import type { Path } from "effect/Path";
7
+ import type * as Scope from "effect/Scope";
8
+ import * as Stream from "effect/Stream";
9
+ import * as Multipart from "effect/unstable/http/Multipart";
10
+ /**
11
+ * @since 1.0.0
12
+ * @category Constructors
13
+ */
14
+ export declare const stream: (source: Request) => Stream.Stream<Multipart.Part, Multipart.MultipartError>;
15
+ /**
16
+ * @since 1.0.0
17
+ * @category Constructors
18
+ */
19
+ export declare const persisted: (source: Request) => Effect.Effect<Multipart.Persisted, Multipart.MultipartError, FileSystem | Path | Scope.Scope>;
20
+ //# sourceMappingURL=BunMultipart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunMultipart.d.ts","sourceRoot":"","sources":["../src/BunMultipart.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,SAAS,MAAM,gCAAgC,CAAA;AAG3D;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,OAAO,KAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAM5F,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,SAAS,GACpB,QAAQ,OAAO,KACd,MAAM,CAAC,MAAM,CACd,SAAS,CAAC,SAAS,EACnB,SAAS,CAAC,cAAc,EACtB,UAAU,GACV,IAAI,GACJ,KAAK,CAAC,KAAK,CAC2B,CAAA"}
@@ -0,0 +1,17 @@
1
+ import * as Stream from "effect/Stream";
2
+ import * as Multipart from "effect/unstable/http/Multipart";
3
+ import * as BunStream from "./BunStream.js";
4
+ /**
5
+ * @since 1.0.0
6
+ * @category Constructors
7
+ */
8
+ export const stream = source => BunStream.fromReadableStream({
9
+ evaluate: () => source.body,
10
+ onError: cause => Multipart.MultipartError.fromReason("InternalError", cause)
11
+ }).pipe(Stream.pipeThroughChannel(Multipart.makeChannel(Object.fromEntries(source.headers))));
12
+ /**
13
+ * @since 1.0.0
14
+ * @category Constructors
15
+ */
16
+ export const persisted = source => Multipart.toPersisted(stream(source));
17
+ //# sourceMappingURL=BunMultipart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunMultipart.js","names":["Stream","Multipart","BunStream","stream","source","fromReadableStream","evaluate","body","onError","cause","MultipartError","fromReason","pipe","pipeThroughChannel","makeChannel","Object","fromEntries","headers","persisted","toPersisted"],"sources":["../src/BunMultipart.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,SAAS,MAAM,gCAAgC;AAC3D,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAO,MAAMC,MAAM,GAAIC,MAAe,IACpCF,SAAS,CAACG,kBAAkB,CAAC;EAC3BC,QAAQ,EAAEA,CAAA,KAAMF,MAAM,CAACG,IAAK;EAC5BC,OAAO,EAAGC,KAAK,IAAKR,SAAS,CAACS,cAAc,CAACC,UAAU,CAAC,eAAe,EAAEF,KAAK;CAC/E,CAAC,CAACG,IAAI,CACLZ,MAAM,CAACa,kBAAkB,CAACZ,SAAS,CAACa,WAAW,CAACC,MAAM,CAACC,WAAW,CAACZ,MAAM,CAACa,OAAO,CAAC,CAAC,CAAC,CACrF;AAEH;;;;AAIA,OAAO,MAAMC,SAAS,GACpBd,MAAe,IAOZH,SAAS,CAACkB,WAAW,CAAChB,MAAM,CAACC,MAAM,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ import type * as Layer from "effect/Layer";
2
+ import type { Path } from "effect/Path";
3
+ /**
4
+ * @since 1.0.0
5
+ * @category layer
6
+ */
7
+ export declare const layer: Layer.Layer<Path>;
8
+ /**
9
+ * @since 1.0.0
10
+ * @category layer
11
+ */
12
+ export declare const layerPosix: Layer.Layer<Path>;
13
+ /**
14
+ * @since 1.0.0
15
+ * @category layer
16
+ */
17
+ export declare const layerWin32: Layer.Layer<Path>;
18
+ //# sourceMappingURL=BunPath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunPath.d.ts","sourceRoot":"","sources":["../src/BunPath.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvC;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAkB,CAAA;AAEtD;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAA;AAEhE;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunPath.js","names":["NodePath","layer","layerPosix","layerWin32"],"sources":["../src/BunPath.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,QAAQ,MAAM,uCAAuC;AAIjE;;;;AAIA,OAAO,MAAMC,KAAK,GAAsBD,QAAQ,CAACC,KAAK;AAEtD;;;;AAIA,OAAO,MAAMC,UAAU,GAAsBF,QAAQ,CAACE,UAAU;AAEhE;;;;AAIA,OAAO,MAAMC,UAAU,GAAsBH,QAAQ,CAACG,UAAU","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { RedisClient, type RedisOptions } from "bun";
5
+ import * as Config from "effect/Config";
6
+ import * as Effect from "effect/Effect";
7
+ import * as Layer from "effect/Layer";
8
+ import * as ServiceMap from "effect/ServiceMap";
9
+ import * as Redis from "effect/unstable/persistence/Redis";
10
+ declare const BunRedis_base: ServiceMap.ServiceClass<BunRedis, "@effect/platform-bun/BunRedis", {
11
+ readonly client: RedisClient;
12
+ readonly use: <A>(f: (client: RedisClient) => Promise<A>) => Effect.Effect<A, Redis.RedisError>;
13
+ }>;
14
+ /**
15
+ * @since 1.0.0
16
+ * @category Service
17
+ */
18
+ export declare class BunRedis extends BunRedis_base {
19
+ }
20
+ /**
21
+ * @since 1.0.0
22
+ * @category Layers
23
+ */
24
+ export declare const layer: (options?: ({
25
+ readonly url?: string;
26
+ } & RedisOptions) | undefined) => Layer.Layer<Redis.Redis | BunRedis>;
27
+ /**
28
+ * @since 1.0.0
29
+ * @category Layers
30
+ */
31
+ export declare const layerConfig: (options: Config.Wrap<{
32
+ readonly url?: string;
33
+ } & RedisOptions>) => Layer.Layer<Redis.Redis | BunRedis, Config.ConfigError>;
34
+ export {};
35
+ //# sourceMappingURL=BunRedis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunRedis.d.ts","sourceRoot":"","sources":["../src/BunRedis.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,KAAK,CAAA;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,mCAAmC,CAAA;;qBAOvC,WAAW;kBACd,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;;AANjG;;;GAGG;AACH,qBAAa,QAAS,SAAQ,aAGO;CAAG;AAmCxC;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,UAAU,CAAC;IAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAAC,GAAG,SAAS,KAC/D,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAwC,CAAA;AAE7E;;;GAGG;AACH,eAAO,MAAM,WAAW,GACtB,SAAS,MAAM,CAAC,IAAI,CAAC;IAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAAC,KAC7D,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,EAAE,MAAM,CAAC,WAAW,CAKtD,CAAA"}