@effect/platform-bun 0.36.16 → 0.37.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 (89) hide show
  1. package/BunEtag/package.json +6 -0
  2. package/BunHttpPlatform/package.json +6 -0
  3. package/BunHttpServerRequest/package.json +6 -0
  4. package/BunMultipart/package.json +6 -0
  5. package/dist/cjs/BunEtag.js +17 -0
  6. package/dist/cjs/BunEtag.js.map +1 -0
  7. package/dist/cjs/{Http/Platform.js → BunHttpPlatform.js} +2 -2
  8. package/dist/cjs/BunHttpPlatform.js.map +1 -0
  9. package/dist/cjs/BunHttpServer.js +22 -9
  10. package/dist/cjs/BunHttpServer.js.map +1 -1
  11. package/dist/cjs/{Http/ServerRequest.js → BunHttpServerRequest.js} +2 -2
  12. package/dist/cjs/BunHttpServerRequest.js.map +1 -0
  13. package/dist/cjs/BunMultipart.js +17 -0
  14. package/dist/cjs/BunMultipart.js.map +1 -0
  15. package/dist/cjs/index.js +9 -1
  16. package/dist/cjs/internal/{http/platform.js → httpPlatform.js} +5 -6
  17. package/dist/cjs/internal/httpPlatform.js.map +1 -0
  18. package/dist/cjs/internal/{http/server.js → httpServer.js} +18 -18
  19. package/dist/cjs/internal/httpServer.js.map +1 -0
  20. package/dist/dts/BunEtag.d.ts +8 -0
  21. package/dist/dts/BunEtag.d.ts.map +1 -0
  22. package/dist/dts/BunHttpPlatform.d.ts +19 -0
  23. package/dist/dts/BunHttpPlatform.d.ts.map +1 -0
  24. package/dist/dts/BunHttpServer.d.ts +20 -21
  25. package/dist/dts/BunHttpServer.d.ts.map +1 -1
  26. package/dist/dts/BunHttpServerRequest.d.ts +10 -0
  27. package/dist/dts/BunHttpServerRequest.d.ts.map +1 -0
  28. package/dist/dts/BunMultipart.d.ts +8 -0
  29. package/dist/dts/BunMultipart.d.ts.map +1 -0
  30. package/dist/dts/index.d.ts +16 -0
  31. package/dist/dts/index.d.ts.map +1 -1
  32. package/dist/dts/internal/httpPlatform.d.ts +2 -0
  33. package/dist/dts/internal/httpPlatform.d.ts.map +1 -0
  34. package/dist/dts/internal/httpServer.d.ts +2 -0
  35. package/dist/dts/internal/httpServer.d.ts.map +1 -0
  36. package/dist/esm/BunEtag.js +8 -0
  37. package/dist/esm/BunEtag.js.map +1 -0
  38. package/dist/esm/{Http/Platform.js → BunHttpPlatform.js} +2 -2
  39. package/dist/esm/BunHttpPlatform.js.map +1 -0
  40. package/dist/esm/BunHttpServer.js +9 -24
  41. package/dist/esm/BunHttpServer.js.map +1 -1
  42. package/dist/esm/BunHttpServerRequest.js +7 -0
  43. package/dist/esm/BunHttpServerRequest.js.map +1 -0
  44. package/dist/esm/BunMultipart.js +8 -0
  45. package/dist/esm/BunMultipart.js.map +1 -0
  46. package/dist/esm/index.js +16 -0
  47. package/dist/esm/index.js.map +1 -1
  48. package/dist/esm/internal/{http/platform.js → httpPlatform.js} +5 -6
  49. package/dist/esm/internal/httpPlatform.js.map +1 -0
  50. package/dist/esm/internal/{http/server.js → httpServer.js} +18 -18
  51. package/dist/esm/internal/httpServer.js.map +1 -0
  52. package/package.json +36 -28
  53. package/src/BunEtag.ts +8 -0
  54. package/src/BunHttpPlatform.ts +21 -0
  55. package/src/BunHttpServer.ts +44 -34
  56. package/src/BunHttpServerRequest.ts +11 -0
  57. package/src/BunMultipart.ts +8 -0
  58. package/src/index.ts +20 -0
  59. package/src/internal/{http/platform.ts → httpPlatform.ts} +4 -6
  60. package/src/internal/{http/server.ts → httpServer.ts} +27 -27
  61. package/Http/Platform/package.json +0 -6
  62. package/Http/Server/package.json +0 -6
  63. package/Http/ServerRequest/package.json +0 -6
  64. package/dist/cjs/Http/Platform.js.map +0 -1
  65. package/dist/cjs/Http/Server.js +0 -53
  66. package/dist/cjs/Http/Server.js.map +0 -1
  67. package/dist/cjs/Http/ServerRequest.js.map +0 -1
  68. package/dist/cjs/internal/http/platform.js.map +0 -1
  69. package/dist/cjs/internal/http/server.js.map +0 -1
  70. package/dist/dts/Http/Platform.d.ts +0 -19
  71. package/dist/dts/Http/Platform.d.ts.map +0 -1
  72. package/dist/dts/Http/Server.d.ts +0 -36
  73. package/dist/dts/Http/Server.d.ts.map +0 -1
  74. package/dist/dts/Http/ServerRequest.d.ts +0 -10
  75. package/dist/dts/Http/ServerRequest.d.ts.map +0 -1
  76. package/dist/dts/internal/http/platform.d.ts +0 -2
  77. package/dist/dts/internal/http/platform.d.ts.map +0 -1
  78. package/dist/dts/internal/http/server.d.ts +0 -2
  79. package/dist/dts/internal/http/server.d.ts.map +0 -1
  80. package/dist/esm/Http/Platform.js.map +0 -1
  81. package/dist/esm/Http/Server.js +0 -22
  82. package/dist/esm/Http/Server.js.map +0 -1
  83. package/dist/esm/Http/ServerRequest.js +0 -7
  84. package/dist/esm/Http/ServerRequest.js.map +0 -1
  85. package/dist/esm/internal/http/platform.js.map +0 -1
  86. package/dist/esm/internal/http/server.js.map +0 -1
  87. package/src/Http/Platform.ts +0 -21
  88. package/src/Http/Server.ts +0 -46
  89. package/src/Http/ServerRequest.ts +0 -11
@@ -1,37 +1,22 @@
1
+ import * as internal from "./internal/httpServer.js";
1
2
  /**
2
3
  * @since 1.0.0
4
+ * @category constructors
3
5
  */
4
- import * as etag from "@effect/platform-node-shared/Http/Etag";
5
- import * as multipart from "@effect/platform-node-shared/Http/Multipart";
6
- import * as server from "./Http/Server.js";
7
- import * as request from "./Http/ServerRequest.js";
8
- export {
6
+ export const make = internal.make;
9
7
  /**
10
8
  * @since 1.0.0
11
- *
12
- * - Docs: [Http/Etag](https://effect-ts.github.io/platform/platform-node-shared/Http/Etag.ts.html)
13
- * - Module: `@effect/platform-node-shared/Http/Etag`
9
+ * @category layers
14
10
  */
15
- etag,
11
+ export const layerServer = internal.layerServer;
16
12
  /**
17
13
  * @since 1.0.0
18
- *
19
- * - Docs: [Http/Multipart](https://effect-ts.github.io/platform/platform-node-shared/Http/Multipart.ts.html)
20
- * - Module: `@effect/platform-node-shared/Http/Multipart`
14
+ * @category layers
21
15
  */
22
- multipart,
16
+ export const layer = internal.layer;
23
17
  /**
24
18
  * @since 1.0.0
25
- *
26
- * - Docs: [Http/ServerRequest](https://effect-ts.github.io/platform/platform-bun/Http/ServerRequest.ts.html)
27
- * - Module: `@effect/platform-bun/Http/ServerRequest`
19
+ * @category layers
28
20
  */
29
- request,
30
- /**
31
- * @since 1.0.0
32
- *
33
- * - Docs: [Http/Server](https://effect-ts.github.io/platform/platform-bun/Http/Server.ts.html)
34
- * - Module: `@effect/platform-bun/Http/Server`
35
- */
36
- server };
21
+ export const layerConfig = internal.layerConfig;
37
22
  //# sourceMappingURL=BunHttpServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BunHttpServer.js","names":["etag","multipart","server","request"],"sources":["../../src/BunHttpServer.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,IAAI,MAAM,wCAAwC;AAC9D,OAAO,KAAKC,SAAS,MAAM,6CAA6C;AACxE,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAC1C,OAAO,KAAKC,OAAO,MAAM,yBAAyB;AAElD;AACE;;;;;;AAMAH,IAAI;AACJ;;;;;;AAMAC,SAAS;AACT;;;;;;AAMAE,OAAO;AACP;;;;;;AAMAD,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"BunHttpServer.js","names":["internal","make","layerServer","layer","layerConfig"],"sources":["../../src/BunHttpServer.ts"],"sourcesContent":[null],"mappings":"AAaA,OAAO,KAAKA,QAAQ,MAAM,0BAA0B;AAEpD;;;;AAIA,OAAO,MAAMC,IAAI,GAE2CD,QAAQ,CAACC,IAAI;AAEzE;;;;AAIA,OAAO,MAAMC,WAAW,GACtBF,QAAQ,CAACE,WAAW;AAEtB;;;;AAIA,OAAO,MAAMC,KAAK,GAEqFH,QAAQ,CAACG,KAAK;AAErH;;;;AAIA,OAAO,MAAMC,WAAW,GAKpBJ,QAAQ,CAACI,WAAW","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import * as internal from "./internal/httpServer.js";
2
+ /**
3
+ * @category conversions
4
+ * @since 1.0.0
5
+ */
6
+ export const toRequest = internal.requestSource;
7
+ //# sourceMappingURL=BunHttpServerRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunHttpServerRequest.js","names":["internal","toRequest","requestSource"],"sources":["../../src/BunHttpServerRequest.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAO,KAAKA,QAAQ,MAAM,0BAA0B;AAEpD;;;;AAIA,OAAO,MAAMC,SAAS,GAAuDD,QAAQ,CAACE,aAAa","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ /**
5
+ * @since 1.0.0
6
+ */
7
+ export * from "@effect/platform-node-shared/NodeMultipart";
8
+ //# sourceMappingURL=BunMultipart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BunMultipart.js","names":[],"sources":["../../src/BunMultipart.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;;;AAGA,cAAc,4CAA4C","ignoreList":[]}
package/dist/esm/index.js CHANGED
@@ -6,18 +6,34 @@ export * as BunCommandExecutor from "./BunCommandExecutor.js";
6
6
  * @since 1.0.0
7
7
  */
8
8
  export * as BunContext from "./BunContext.js";
9
+ /**
10
+ * @since 1.0.0
11
+ */
12
+ export * as BunEtag from "./BunEtag.js";
9
13
  /**
10
14
  * @since 1.0.0
11
15
  */
12
16
  export * as BunFileSystem from "./BunFileSystem.js";
17
+ /**
18
+ * @since 1.0.0
19
+ */
20
+ export * as BunHttpPlatform from "./BunHttpPlatform.js";
13
21
  /**
14
22
  * @since 1.0.0
15
23
  */
16
24
  export * as BunHttpServer from "./BunHttpServer.js";
25
+ /**
26
+ * @since 1.0.0
27
+ */
28
+ export * as BunHttpServerRequest from "./BunHttpServerRequest.js";
17
29
  /**
18
30
  * @since 1.0.0
19
31
  */
20
32
  export * as BunKeyValueStore from "./BunKeyValueStore.js";
33
+ /**
34
+ * @since 1.0.0
35
+ */
36
+ export * as BunMultipart from "./BunMultipart.js";
21
37
  /**
22
38
  * @since 1.0.0
23
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["BunCommandExecutor","BunContext","BunFileSystem","BunHttpServer","BunKeyValueStore","BunPath","BunRuntime","BunSink","BunSocket","BunStream","BunTerminal","BunWorker","BunWorkerRunner"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,kBAAkB,MAAM,yBAAyB;AAE7D;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,eAAe,MAAM,sBAAsB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["BunCommandExecutor","BunContext","BunEtag","BunFileSystem","BunHttpPlatform","BunHttpServer","BunHttpServerRequest","BunKeyValueStore","BunMultipart","BunPath","BunRuntime","BunSink","BunSocket","BunStream","BunTerminal","BunWorker","BunWorkerRunner"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,kBAAkB,MAAM,yBAAyB;AAE7D;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,eAAe,MAAM,sBAAsB;AAEvD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,oBAAoB,MAAM,2BAA2B;AAEjE;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AAEjD;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,eAAe,MAAM,sBAAsB","ignoreList":[]}
@@ -1,8 +1,7 @@
1
- import * as Etag from "@effect/platform-node-shared/Http/Etag";
1
+ import * as Etag from "@effect/platform-node-shared/NodeEtag";
2
2
  import * as FileSystem from "@effect/platform-node-shared/NodeFileSystem";
3
- import * as Platform from "@effect/platform/Http/Platform";
4
- import * as ServerResponse from "@effect/platform/Http/ServerResponse";
5
- import { pipe } from "effect/Function";
3
+ import * as Platform from "@effect/platform/HttpPlatform";
4
+ import * as ServerResponse from "@effect/platform/HttpServerResponse";
6
5
  import * as Layer from "effect/Layer";
7
6
  /** @internal */
8
7
  export const make = /*#__PURE__*/Platform.make({
@@ -26,5 +25,5 @@ export const make = /*#__PURE__*/Platform.make({
26
25
  }
27
26
  });
28
27
  /** @internal */
29
- export const layer = /*#__PURE__*/pipe( /*#__PURE__*/Layer.effect(Platform.Platform, make), /*#__PURE__*/Layer.provide(FileSystem.layer), /*#__PURE__*/Layer.provide(Etag.layer));
30
- //# sourceMappingURL=platform.js.map
28
+ export const layer = /*#__PURE__*/Layer.effect(Platform.HttpPlatform, make).pipe( /*#__PURE__*/Layer.provide(FileSystem.layer), /*#__PURE__*/Layer.provide(Etag.layer));
29
+ //# sourceMappingURL=httpPlatform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpPlatform.js","names":["Etag","FileSystem","Platform","ServerResponse","Layer","make","fileResponse","path","status","statusText","headers","start","end","_contentLength","file","Bun","undefined","slice","raw","fileWebResponse","_options","layer","effect","HttpPlatform","pipe","provide"],"sources":["../../../src/internal/httpPlatform.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,IAAI,MAAM,uCAAuC;AAC7D,OAAO,KAAKC,UAAU,MAAM,6CAA6C;AACzE,OAAO,KAAKC,QAAQ,MAAM,+BAA+B;AACzD,OAAO,KAAKC,cAAc,MAAM,qCAAqC;AACrE,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC;AACA,OAAO,MAAMC,IAAI,gBAAGH,QAAQ,CAACG,IAAI,CAAC;EAChCC,YAAYA,CAACC,IAAI,EAAEC,MAAM,EAAEC,UAAU,EAAEC,OAAO,EAAEC,KAAK,EAAEC,GAAG,EAAEC,cAAc;IACxE,IAAIC,IAAI,GAAGC,GAAG,CAACD,IAAI,CAACP,IAAI,CAAC;IACzB,IAAII,KAAK,GAAG,CAAC,IAAIC,GAAG,KAAKI,SAAS,EAAE;MAClCF,IAAI,GAAGA,IAAI,CAACG,KAAK,CAACN,KAAK,EAAEC,GAAG,CAAC;IAC/B;IACA,OAAOT,cAAc,CAACe,GAAG,CAACJ,IAAI,EAAE;MAAEJ,OAAO;MAAEF,MAAM;MAAEC;IAAU,CAAE,CAAC;EAClE,CAAC;EACDU,eAAeA,CAACL,IAAI,EAAEN,MAAM,EAAEC,UAAU,EAAEC,OAAO,EAAEU,QAAQ;IACzD,OAAOjB,cAAc,CAACe,GAAG,CAACJ,IAAI,EAAE;MAAEJ,OAAO;MAAEF,MAAM;MAAEC;IAAU,CAAE,CAAC;EAClE;CACD,CAAC;AAEF;AACA,OAAO,MAAMY,KAAK,gBAAGjB,KAAK,CAACkB,MAAM,CAACpB,QAAQ,CAACqB,YAAY,EAAElB,IAAI,CAAC,CAACmB,IAAI,eACjEpB,KAAK,CAACqB,OAAO,CAACxB,UAAU,CAACoB,KAAK,CAAC,eAC/BjB,KAAK,CAACqB,OAAO,CAACzB,IAAI,CAACqB,KAAK,CAAC,CAC1B","ignoreList":[]}
@@ -1,15 +1,15 @@
1
1
  /// <reference types="bun-types" />
2
- import * as Etag from "@effect/platform-node-shared/Http/Etag";
3
- import * as MultipartNode from "@effect/platform-node-shared/Http/Multipart";
4
- import * as App from "@effect/platform/Http/App";
5
- import * as Cookies from "@effect/platform/Http/Cookies";
6
- import * as Headers from "@effect/platform/Http/Headers";
7
- import * as IncomingMessage from "@effect/platform/Http/IncomingMessage";
8
- import * as Server from "@effect/platform/Http/Server";
9
- import * as Error from "@effect/platform/Http/ServerError";
10
- import * as ServerRequest from "@effect/platform/Http/ServerRequest";
11
- import * as UrlParams from "@effect/platform/Http/UrlParams";
2
+ import * as Etag from "@effect/platform-node-shared/NodeEtag";
3
+ import * as MultipartNode from "@effect/platform-node-shared/NodeMultipart";
4
+ import * as Cookies from "@effect/platform/Cookies";
5
+ import * as Headers from "@effect/platform/Headers";
6
+ import * as App from "@effect/platform/HttpApp";
7
+ import * as IncomingMessage from "@effect/platform/HttpIncomingMessage";
8
+ import * as Server from "@effect/platform/HttpServer";
9
+ import * as Error from "@effect/platform/HttpServerError";
10
+ import * as ServerRequest from "@effect/platform/HttpServerRequest";
12
11
  import * as Socket from "@effect/platform/Socket";
12
+ import * as UrlParams from "@effect/platform/UrlParams";
13
13
  import * as Cause from "effect/Cause";
14
14
  import * as Config from "effect/Config";
15
15
  import * as Deferred from "effect/Deferred";
@@ -22,8 +22,8 @@ import * as Layer from "effect/Layer";
22
22
  import * as Option from "effect/Option";
23
23
  import * as Stream from "effect/Stream";
24
24
  import { Readable } from "node:stream";
25
- import * as BunContext from "../../BunContext.js";
26
- import * as Platform from "../../Http/Platform.js";
25
+ import * as BunContext from "../BunContext.js";
26
+ import * as Platform from "../BunHttpPlatform.js";
27
27
  /** @internal */
28
28
  export const make = options => Effect.gen(function* (_) {
29
29
  const handlerStack = [function (_request, _server) {
@@ -79,7 +79,7 @@ export const make = options => Effect.gen(function* (_) {
79
79
  }) => Effect.async(_ => {
80
80
  function handler(request, server) {
81
81
  return new Promise((resolve, reject) => {
82
- const fiber = runFork(Effect.provideService(app, ServerRequest.ServerRequest, new ServerRequestImpl(request, resolve, reject, removeHost(request.url), server)));
82
+ const fiber = runFork(Effect.provideService(app, ServerRequest.HttpServerRequest, new ServerRequestImpl(request, resolve, reject, removeHost(request.url), server)));
83
83
  request.signal.addEventListener("abort", () => {
84
84
  runFork(fiber.interruptAsFork(Error.clientAbortFiberId));
85
85
  }, {
@@ -139,11 +139,11 @@ const makeResponse = (request, response, runtime) => {
139
139
  }
140
140
  };
141
141
  /** @internal */
142
- export const layerServer = options => Layer.scoped(Server.Server, make(options));
142
+ export const layerServer = options => Layer.scoped(Server.HttpServer, make(options));
143
143
  /** @internal */
144
- export const layer = options => Layer.mergeAll(Layer.scoped(Server.Server, make(options)), Platform.layer, Etag.layerWeak, BunContext.layer);
144
+ export const layer = options => Layer.mergeAll(Layer.scoped(Server.HttpServer, make(options)), Platform.layer, Etag.layerWeak, BunContext.layer);
145
145
  /** @internal */
146
- export const layerConfig = options => Layer.mergeAll(Layer.scoped(Server.Server, Effect.flatMap(Config.unwrap(options), make)), Platform.layer, Etag.layerWeak, BunContext.layer);
146
+ export const layerConfig = options => Layer.mergeAll(Layer.scoped(Server.HttpServer, Effect.flatMap(Config.unwrap(options), make)), Platform.layer, Etag.layerWeak, BunContext.layer);
147
147
  function wsDefaultRun(_) {
148
148
  this.buffer.push(_);
149
149
  }
@@ -171,7 +171,7 @@ class ServerRequestImpl extends Inspectable.Class {
171
171
  }
172
172
  toJSON() {
173
173
  return IncomingMessage.inspect(this, {
174
- _id: "@effect/platform/Http/ServerRequest",
174
+ _id: "@effect/platform/HttpServerRequest",
175
175
  method: this.method,
176
176
  url: this.originalUrl
177
177
  });
@@ -324,4 +324,4 @@ const removeHost = url => {
324
324
  };
325
325
  /** @internal */
326
326
  export const requestSource = self => self.source;
327
- //# sourceMappingURL=server.js.map
327
+ //# sourceMappingURL=httpServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpServer.js","names":["Etag","MultipartNode","Cookies","Headers","App","IncomingMessage","Server","Error","ServerRequest","Socket","UrlParams","Cause","Config","Deferred","Effect","Exit","FiberSet","pipe","Inspectable","Layer","Option","Stream","Readable","BunContext","Platform","make","options","gen","_","handlerStack","_request","_server","Response","status","server","Bun","serve","fetch","websocket","open","ws","unsafeDone","data","deferred","succeed","message","run","close","code","closeReason","closeDeferred","defaultCloseCodeIsError","fail","SocketCloseError","reason","void","addFinalizer","sync","stop","address","_tag","port","hostname","httpApp","middleware","makeRuntime","bindTo","bind","runtime","let","toHandled","request","exit","impl","resolve","makeResponse","value","isInterruptedOnly","cause","undefined","source","signal","aborted","reject","pretty","flatMap","app","runFork","async","handler","Promise","fiber","provideService","HttpServerRequest","ServerRequestImpl","removeHost","url","addEventListener","interruptAsFork","clientAbortFiberId","once","push","reload","pop","length","interruptible","forkScoped","asVoid","response","fields","headers","globalThis","isEmpty","cookies","header","toSetCookieHeaders","append","statusText","method","body","formData","toReadableStreamRuntime","stream","layerServer","scoped","HttpServer","layer","mergeAll","layerWeak","layerConfig","unwrap","wsDefaultRun","buffer","Class","bunServer","headersOverride","remoteAddressOverride","TypeId","constructor","toJSON","inspect","_id","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","fromReadableStream","RequestError","error","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","parse","urlParamsBody","URLSearchParams","multipartEffect","multipart","persisted","fromWeb","multipartStream","arrayBufferEffect","arrayBuffer","upgrade","all","makeSemaphore","semaphore","resume","success","map","await","write","chunk","sendText","isCloseEvent","sendBinary","writer","runRaw","set","forEach","join","onExit","raceFirst","withPermits","encoder","TextEncoder","encode","of","index","indexOf","slice","requestSource","self"],"sources":["../../../src/internal/httpServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform-bun",
3
- "version": "0.36.16",
3
+ "version": "0.37.0",
4
4
  "description": "Platform specific implementations for the Bun runtime",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -10,11 +10,11 @@
10
10
  },
11
11
  "sideEffects": [],
12
12
  "dependencies": {
13
- "@effect/platform-node-shared": "^0.6.16"
13
+ "@effect/platform-node-shared": "^0.7.0"
14
14
  },
15
15
  "peerDependencies": {
16
- "@effect/platform": "^0.57.7",
17
- "effect": "^3.3.5"
16
+ "@effect/platform": "^0.58.0",
17
+ "effect": "^3.4.0"
18
18
  },
19
19
  "publishConfig": {
20
20
  "provenance": true
@@ -39,21 +39,41 @@
39
39
  "import": "./dist/esm/BunContext.js",
40
40
  "default": "./dist/cjs/BunContext.js"
41
41
  },
42
+ "./BunEtag": {
43
+ "types": "./dist/dts/BunEtag.d.ts",
44
+ "import": "./dist/esm/BunEtag.js",
45
+ "default": "./dist/cjs/BunEtag.js"
46
+ },
42
47
  "./BunFileSystem": {
43
48
  "types": "./dist/dts/BunFileSystem.d.ts",
44
49
  "import": "./dist/esm/BunFileSystem.js",
45
50
  "default": "./dist/cjs/BunFileSystem.js"
46
51
  },
52
+ "./BunHttpPlatform": {
53
+ "types": "./dist/dts/BunHttpPlatform.d.ts",
54
+ "import": "./dist/esm/BunHttpPlatform.js",
55
+ "default": "./dist/cjs/BunHttpPlatform.js"
56
+ },
47
57
  "./BunHttpServer": {
48
58
  "types": "./dist/dts/BunHttpServer.d.ts",
49
59
  "import": "./dist/esm/BunHttpServer.js",
50
60
  "default": "./dist/cjs/BunHttpServer.js"
51
61
  },
62
+ "./BunHttpServerRequest": {
63
+ "types": "./dist/dts/BunHttpServerRequest.d.ts",
64
+ "import": "./dist/esm/BunHttpServerRequest.js",
65
+ "default": "./dist/cjs/BunHttpServerRequest.js"
66
+ },
52
67
  "./BunKeyValueStore": {
53
68
  "types": "./dist/dts/BunKeyValueStore.d.ts",
54
69
  "import": "./dist/esm/BunKeyValueStore.js",
55
70
  "default": "./dist/cjs/BunKeyValueStore.js"
56
71
  },
72
+ "./BunMultipart": {
73
+ "types": "./dist/dts/BunMultipart.d.ts",
74
+ "import": "./dist/esm/BunMultipart.js",
75
+ "default": "./dist/cjs/BunMultipart.js"
76
+ },
57
77
  "./BunPath": {
58
78
  "types": "./dist/dts/BunPath.d.ts",
59
79
  "import": "./dist/esm/BunPath.js",
@@ -93,21 +113,6 @@
93
113
  "types": "./dist/dts/BunWorkerRunner.d.ts",
94
114
  "import": "./dist/esm/BunWorkerRunner.js",
95
115
  "default": "./dist/cjs/BunWorkerRunner.js"
96
- },
97
- "./Http/Platform": {
98
- "types": "./dist/dts/Http/Platform.d.ts",
99
- "import": "./dist/esm/Http/Platform.js",
100
- "default": "./dist/cjs/Http/Platform.js"
101
- },
102
- "./Http/Server": {
103
- "types": "./dist/dts/Http/Server.d.ts",
104
- "import": "./dist/esm/Http/Server.js",
105
- "default": "./dist/cjs/Http/Server.js"
106
- },
107
- "./Http/ServerRequest": {
108
- "types": "./dist/dts/Http/ServerRequest.d.ts",
109
- "import": "./dist/esm/Http/ServerRequest.js",
110
- "default": "./dist/cjs/Http/ServerRequest.js"
111
116
  }
112
117
  },
113
118
  "typesVersions": {
@@ -118,15 +123,27 @@
118
123
  "BunContext": [
119
124
  "./dist/dts/BunContext.d.ts"
120
125
  ],
126
+ "BunEtag": [
127
+ "./dist/dts/BunEtag.d.ts"
128
+ ],
121
129
  "BunFileSystem": [
122
130
  "./dist/dts/BunFileSystem.d.ts"
123
131
  ],
132
+ "BunHttpPlatform": [
133
+ "./dist/dts/BunHttpPlatform.d.ts"
134
+ ],
124
135
  "BunHttpServer": [
125
136
  "./dist/dts/BunHttpServer.d.ts"
126
137
  ],
138
+ "BunHttpServerRequest": [
139
+ "./dist/dts/BunHttpServerRequest.d.ts"
140
+ ],
127
141
  "BunKeyValueStore": [
128
142
  "./dist/dts/BunKeyValueStore.d.ts"
129
143
  ],
144
+ "BunMultipart": [
145
+ "./dist/dts/BunMultipart.d.ts"
146
+ ],
130
147
  "BunPath": [
131
148
  "./dist/dts/BunPath.d.ts"
132
149
  ],
@@ -150,15 +167,6 @@
150
167
  ],
151
168
  "BunWorkerRunner": [
152
169
  "./dist/dts/BunWorkerRunner.d.ts"
153
- ],
154
- "Http/Platform": [
155
- "./dist/dts/Http/Platform.d.ts"
156
- ],
157
- "Http/Server": [
158
- "./dist/dts/Http/Server.d.ts"
159
- ],
160
- "Http/ServerRequest": [
161
- "./dist/dts/Http/ServerRequest.d.ts"
162
170
  ]
163
171
  }
164
172
  }
package/src/BunEtag.ts ADDED
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+
5
+ /**
6
+ * @since 1.0.0
7
+ */
8
+ export * from "@effect/platform-node-shared/NodeEtag"
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type * as Etag from "@effect/platform/Etag"
5
+ import type * as FileSystem from "@effect/platform/FileSystem"
6
+ import type * as Platform from "@effect/platform/HttpPlatform"
7
+ import type * as Effect from "effect/Effect"
8
+ import type * as Layer from "effect/Layer"
9
+ import * as internal from "./internal/httpPlatform.js"
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ * @category constructors
14
+ */
15
+ export const make: Effect.Effect<Platform.HttpPlatform, never, FileSystem.FileSystem | Etag.Generator> = internal.make
16
+
17
+ /**
18
+ * @since 1.0.0
19
+ * @category layers
20
+ */
21
+ export const layer: Layer.Layer<Platform.HttpPlatform> = internal.layer
@@ -1,38 +1,48 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- import * as etag from "@effect/platform-node-shared/Http/Etag"
5
- import * as multipart from "@effect/platform-node-shared/Http/Multipart"
6
- import * as server from "./Http/Server.js"
7
- import * as request from "./Http/ServerRequest.js"
4
+ import type * as Etag from "@effect/platform/Etag"
5
+ import type * as Platform from "@effect/platform/HttpPlatform"
6
+ import type * as Server from "@effect/platform/HttpServer"
7
+ import type { ServeOptions } from "bun"
8
+ import type * as Config from "effect/Config"
9
+ import type * as ConfigError from "effect/ConfigError"
10
+ import type * as Effect from "effect/Effect"
11
+ import type * as Layer from "effect/Layer"
12
+ import type * as Scope from "effect/Scope"
13
+ import type * as BunContext from "./BunContext.js"
14
+ import * as internal from "./internal/httpServer.js"
8
15
 
9
- export {
10
- /**
11
- * @since 1.0.0
12
- *
13
- * - Docs: [Http/Etag](https://effect-ts.github.io/platform/platform-node-shared/Http/Etag.ts.html)
14
- * - Module: `@effect/platform-node-shared/Http/Etag`
15
- */
16
- etag,
17
- /**
18
- * @since 1.0.0
19
- *
20
- * - Docs: [Http/Multipart](https://effect-ts.github.io/platform/platform-node-shared/Http/Multipart.ts.html)
21
- * - Module: `@effect/platform-node-shared/Http/Multipart`
22
- */
23
- multipart,
24
- /**
25
- * @since 1.0.0
26
- *
27
- * - Docs: [Http/ServerRequest](https://effect-ts.github.io/platform/platform-bun/Http/ServerRequest.ts.html)
28
- * - Module: `@effect/platform-bun/Http/ServerRequest`
29
- */
30
- request,
31
- /**
32
- * @since 1.0.0
33
- *
34
- * - Docs: [Http/Server](https://effect-ts.github.io/platform/platform-bun/Http/Server.ts.html)
35
- * - Module: `@effect/platform-bun/Http/Server`
36
- */
37
- server
38
- }
16
+ /**
17
+ * @since 1.0.0
18
+ * @category constructors
19
+ */
20
+ export const make: (
21
+ options: Omit<ServeOptions, "fetch" | "error">
22
+ ) => Effect.Effect<Server.HttpServer, never, Scope.Scope> = internal.make
23
+
24
+ /**
25
+ * @since 1.0.0
26
+ * @category layers
27
+ */
28
+ export const layerServer: (options: Omit<ServeOptions, "fetch" | "error">) => Layer.Layer<Server.HttpServer> =
29
+ internal.layerServer
30
+
31
+ /**
32
+ * @since 1.0.0
33
+ * @category layers
34
+ */
35
+ export const layer: (
36
+ options: Omit<ServeOptions, "fetch" | "error">
37
+ ) => Layer.Layer<Server.HttpServer | Platform.HttpPlatform | Etag.Generator | BunContext.BunContext> = internal.layer
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category layers
42
+ */
43
+ export const layerConfig: (
44
+ options: Config.Config.Wrap<Omit<ServeOptions, "fetch" | "error">>
45
+ ) => Layer.Layer<
46
+ Server.HttpServer | Platform.HttpPlatform | Etag.Generator | BunContext.BunContext,
47
+ ConfigError.ConfigError
48
+ > = internal.layerConfig
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type * as ServerRequest from "@effect/platform/HttpServerRequest"
5
+ import * as internal from "./internal/httpServer.js"
6
+
7
+ /**
8
+ * @category conversions
9
+ * @since 1.0.0
10
+ */
11
+ export const toRequest: (self: ServerRequest.HttpServerRequest) => Request = internal.requestSource
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+
5
+ /**
6
+ * @since 1.0.0
7
+ */
8
+ export * from "@effect/platform-node-shared/NodeMultipart"
package/src/index.ts CHANGED
@@ -8,21 +8,41 @@ export * as BunCommandExecutor from "./BunCommandExecutor.js"
8
8
  */
9
9
  export * as BunContext from "./BunContext.js"
10
10
 
11
+ /**
12
+ * @since 1.0.0
13
+ */
14
+ export * as BunEtag from "./BunEtag.js"
15
+
11
16
  /**
12
17
  * @since 1.0.0
13
18
  */
14
19
  export * as BunFileSystem from "./BunFileSystem.js"
15
20
 
21
+ /**
22
+ * @since 1.0.0
23
+ */
24
+ export * as BunHttpPlatform from "./BunHttpPlatform.js"
25
+
16
26
  /**
17
27
  * @since 1.0.0
18
28
  */
19
29
  export * as BunHttpServer from "./BunHttpServer.js"
20
30
 
31
+ /**
32
+ * @since 1.0.0
33
+ */
34
+ export * as BunHttpServerRequest from "./BunHttpServerRequest.js"
35
+
21
36
  /**
22
37
  * @since 1.0.0
23
38
  */
24
39
  export * as BunKeyValueStore from "./BunKeyValueStore.js"
25
40
 
41
+ /**
42
+ * @since 1.0.0
43
+ */
44
+ export * as BunMultipart from "./BunMultipart.js"
45
+
26
46
  /**
27
47
  * @since 1.0.0
28
48
  */
@@ -1,8 +1,7 @@
1
- import * as Etag from "@effect/platform-node-shared/Http/Etag"
1
+ import * as Etag from "@effect/platform-node-shared/NodeEtag"
2
2
  import * as FileSystem from "@effect/platform-node-shared/NodeFileSystem"
3
- import * as Platform from "@effect/platform/Http/Platform"
4
- import * as ServerResponse from "@effect/platform/Http/ServerResponse"
5
- import { pipe } from "effect/Function"
3
+ import * as Platform from "@effect/platform/HttpPlatform"
4
+ import * as ServerResponse from "@effect/platform/HttpServerResponse"
6
5
  import * as Layer from "effect/Layer"
7
6
 
8
7
  /** @internal */
@@ -20,8 +19,7 @@ export const make = Platform.make({
20
19
  })
21
20
 
22
21
  /** @internal */
23
- export const layer = pipe(
24
- Layer.effect(Platform.Platform, make),
22
+ export const layer = Layer.effect(Platform.HttpPlatform, make).pipe(
25
23
  Layer.provide(FileSystem.layer),
26
24
  Layer.provide(Etag.layer)
27
25
  )