@effect/platform-node 0.0.0-snapshot-c0ae728e57df2c572ea803e1bb7121088cd67b49

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 (181) hide show
  1. package/Http/Platform/package.json +6 -0
  2. package/Http/Server/package.json +6 -0
  3. package/Http/ServerRequest/package.json +6 -0
  4. package/LICENSE +21 -0
  5. package/NodeCommandExecutor/package.json +6 -0
  6. package/NodeContext/package.json +6 -0
  7. package/NodeFileSystem/package.json +6 -0
  8. package/NodeHttpClient/package.json +6 -0
  9. package/NodeHttpServer/package.json +6 -0
  10. package/NodeKeyValueStore/package.json +6 -0
  11. package/NodePath/package.json +6 -0
  12. package/NodeRuntime/package.json +6 -0
  13. package/NodeSink/package.json +6 -0
  14. package/NodeStream/package.json +6 -0
  15. package/NodeTerminal/package.json +6 -0
  16. package/NodeWorker/package.json +6 -0
  17. package/NodeWorkerRunner/package.json +6 -0
  18. package/README.md +64 -0
  19. package/dist/cjs/Http/Platform.js +43 -0
  20. package/dist/cjs/Http/Platform.js.map +1 -0
  21. package/dist/cjs/Http/Server.js +58 -0
  22. package/dist/cjs/Http/Server.js.map +1 -0
  23. package/dist/cjs/Http/ServerRequest.js +38 -0
  24. package/dist/cjs/Http/ServerRequest.js.map +1 -0
  25. package/dist/cjs/NodeCommandExecutor.js +42 -0
  26. package/dist/cjs/NodeCommandExecutor.js.map +1 -0
  27. package/dist/cjs/NodeContext.js +48 -0
  28. package/dist/cjs/NodeContext.js.map +1 -0
  29. package/dist/cjs/NodeFileSystem.js +42 -0
  30. package/dist/cjs/NodeFileSystem.js.map +1 -0
  31. package/dist/cjs/NodeHttpClient.js +73 -0
  32. package/dist/cjs/NodeHttpClient.js.map +1 -0
  33. package/dist/cjs/NodeHttpServer.js +40 -0
  34. package/dist/cjs/NodeHttpServer.js.map +1 -0
  35. package/dist/cjs/NodeKeyValueStore.js +42 -0
  36. package/dist/cjs/NodeKeyValueStore.js.map +1 -0
  37. package/dist/cjs/NodePath.js +52 -0
  38. package/dist/cjs/NodePath.js.map +1 -0
  39. package/dist/cjs/NodeRuntime.js +42 -0
  40. package/dist/cjs/NodeRuntime.js.map +1 -0
  41. package/dist/cjs/NodeSink.js +17 -0
  42. package/dist/cjs/NodeSink.js.map +1 -0
  43. package/dist/cjs/NodeStream.js +17 -0
  44. package/dist/cjs/NodeStream.js.map +1 -0
  45. package/dist/cjs/NodeTerminal.js +47 -0
  46. package/dist/cjs/NodeTerminal.js.map +1 -0
  47. package/dist/cjs/NodeWorker.js +63 -0
  48. package/dist/cjs/NodeWorker.js.map +1 -0
  49. package/dist/cjs/NodeWorkerRunner.js +48 -0
  50. package/dist/cjs/NodeWorkerRunner.js.map +1 -0
  51. package/dist/cjs/index.js +58 -0
  52. package/dist/cjs/index.js.map +1 -0
  53. package/dist/cjs/internal/http/client.js +216 -0
  54. package/dist/cjs/internal/http/client.js.map +1 -0
  55. package/dist/cjs/internal/http/incomingMessage.js +91 -0
  56. package/dist/cjs/internal/http/incomingMessage.js.map +1 -0
  57. package/dist/cjs/internal/http/platform.js +77 -0
  58. package/dist/cjs/internal/http/platform.js.map +1 -0
  59. package/dist/cjs/internal/http/server.js +270 -0
  60. package/dist/cjs/internal/http/server.js.map +1 -0
  61. package/dist/cjs/internal/worker.js +89 -0
  62. package/dist/cjs/internal/worker.js.map +1 -0
  63. package/dist/cjs/internal/workerRunner.js +85 -0
  64. package/dist/cjs/internal/workerRunner.js.map +1 -0
  65. package/dist/dts/Http/Platform.d.ts +19 -0
  66. package/dist/dts/Http/Platform.d.ts.map +1 -0
  67. package/dist/dts/Http/Server.d.ts +50 -0
  68. package/dist/dts/Http/Server.d.ts.map +1 -0
  69. package/dist/dts/Http/ServerRequest.d.ts +12 -0
  70. package/dist/dts/Http/ServerRequest.d.ts.map +1 -0
  71. package/dist/dts/NodeCommandExecutor.d.ts +9 -0
  72. package/dist/dts/NodeCommandExecutor.d.ts.map +1 -0
  73. package/dist/dts/NodeContext.d.ts +17 -0
  74. package/dist/dts/NodeContext.d.ts.map +1 -0
  75. package/dist/dts/NodeFileSystem.d.ts +8 -0
  76. package/dist/dts/NodeFileSystem.d.ts.map +1 -0
  77. package/dist/dts/NodeHttpClient.d.ts +67 -0
  78. package/dist/dts/NodeHttpClient.d.ts.map +1 -0
  79. package/dist/dts/NodeHttpServer.d.ts +37 -0
  80. package/dist/dts/NodeHttpServer.d.ts.map +1 -0
  81. package/dist/dts/NodeKeyValueStore.d.ts +9 -0
  82. package/dist/dts/NodeKeyValueStore.d.ts.map +1 -0
  83. package/dist/dts/NodePath.d.ts +21 -0
  84. package/dist/dts/NodePath.d.ts.map +1 -0
  85. package/dist/dts/NodeRuntime.d.ts +7 -0
  86. package/dist/dts/NodeRuntime.d.ts.map +1 -0
  87. package/dist/dts/NodeSink.d.ts +8 -0
  88. package/dist/dts/NodeSink.d.ts.map +1 -0
  89. package/dist/dts/NodeStream.d.ts +8 -0
  90. package/dist/dts/NodeStream.d.ts.map +1 -0
  91. package/dist/dts/NodeTerminal.d.ts +15 -0
  92. package/dist/dts/NodeTerminal.d.ts.map +1 -0
  93. package/dist/dts/NodeWorker.d.ts +42 -0
  94. package/dist/dts/NodeWorker.d.ts.map +1 -0
  95. package/dist/dts/NodeWorkerRunner.d.ts +24 -0
  96. package/dist/dts/NodeWorkerRunner.d.ts.map +1 -0
  97. package/dist/dts/index.d.ts +53 -0
  98. package/dist/dts/index.d.ts.map +1 -0
  99. package/dist/dts/internal/http/client.d.ts +2 -0
  100. package/dist/dts/internal/http/client.d.ts.map +1 -0
  101. package/dist/dts/internal/http/incomingMessage.d.ts +2 -0
  102. package/dist/dts/internal/http/incomingMessage.d.ts.map +1 -0
  103. package/dist/dts/internal/http/platform.d.ts +2 -0
  104. package/dist/dts/internal/http/platform.d.ts.map +1 -0
  105. package/dist/dts/internal/http/server.d.ts +2 -0
  106. package/dist/dts/internal/http/server.d.ts.map +1 -0
  107. package/dist/dts/internal/worker.d.ts +2 -0
  108. package/dist/dts/internal/worker.d.ts.map +1 -0
  109. package/dist/dts/internal/workerRunner.d.ts +2 -0
  110. package/dist/dts/internal/workerRunner.d.ts.map +1 -0
  111. package/dist/esm/Http/Platform.js +12 -0
  112. package/dist/esm/Http/Platform.js.map +1 -0
  113. package/dist/esm/Http/Server.js +27 -0
  114. package/dist/esm/Http/Server.js.map +1 -0
  115. package/dist/esm/Http/ServerRequest.js +7 -0
  116. package/dist/esm/Http/ServerRequest.js.map +1 -0
  117. package/dist/esm/NodeCommandExecutor.js +10 -0
  118. package/dist/esm/NodeCommandExecutor.js.map +1 -0
  119. package/dist/esm/NodeContext.js +16 -0
  120. package/dist/esm/NodeContext.js.map +1 -0
  121. package/dist/esm/NodeFileSystem.js +10 -0
  122. package/dist/esm/NodeFileSystem.js.map +1 -0
  123. package/dist/esm/NodeHttpClient.js +42 -0
  124. package/dist/esm/NodeHttpClient.js.map +1 -0
  125. package/dist/esm/NodeHttpServer.js +37 -0
  126. package/dist/esm/NodeHttpServer.js.map +1 -0
  127. package/dist/esm/NodeKeyValueStore.js +10 -0
  128. package/dist/esm/NodeKeyValueStore.js.map +1 -0
  129. package/dist/esm/NodePath.js +20 -0
  130. package/dist/esm/NodePath.js.map +1 -0
  131. package/dist/esm/NodeRuntime.js +10 -0
  132. package/dist/esm/NodeRuntime.js.map +1 -0
  133. package/dist/esm/NodeSink.js +8 -0
  134. package/dist/esm/NodeSink.js.map +1 -0
  135. package/dist/esm/NodeStream.js +8 -0
  136. package/dist/esm/NodeStream.js.map +1 -0
  137. package/dist/esm/NodeTerminal.js +15 -0
  138. package/dist/esm/NodeTerminal.js.map +1 -0
  139. package/dist/esm/NodeWorker.js +32 -0
  140. package/dist/esm/NodeWorker.js.map +1 -0
  141. package/dist/esm/NodeWorkerRunner.js +17 -0
  142. package/dist/esm/NodeWorkerRunner.js.map +1 -0
  143. package/dist/esm/index.js +53 -0
  144. package/dist/esm/index.js.map +1 -0
  145. package/dist/esm/internal/http/client.js +183 -0
  146. package/dist/esm/internal/http/client.js.map +1 -0
  147. package/dist/esm/internal/http/incomingMessage.js +59 -0
  148. package/dist/esm/internal/http/incomingMessage.js.map +1 -0
  149. package/dist/esm/internal/http/platform.js +41 -0
  150. package/dist/esm/internal/http/platform.js.map +1 -0
  151. package/dist/esm/internal/http/server.js +233 -0
  152. package/dist/esm/internal/http/server.js.map +1 -0
  153. package/dist/esm/internal/worker.js +58 -0
  154. package/dist/esm/internal/worker.js.map +1 -0
  155. package/dist/esm/internal/workerRunner.js +52 -0
  156. package/dist/esm/internal/workerRunner.js.map +1 -0
  157. package/dist/esm/package.json +4 -0
  158. package/package.json +162 -0
  159. package/src/Http/Platform.ts +21 -0
  160. package/src/Http/Server.ts +86 -0
  161. package/src/Http/ServerRequest.ts +12 -0
  162. package/src/NodeCommandExecutor.ts +13 -0
  163. package/src/NodeContext.ts +40 -0
  164. package/src/NodeFileSystem.ts +12 -0
  165. package/src/NodeHttpClient.ts +76 -0
  166. package/src/NodeHttpServer.ts +38 -0
  167. package/src/NodeKeyValueStore.ts +15 -0
  168. package/src/NodePath.ts +25 -0
  169. package/src/NodeRuntime.ts +11 -0
  170. package/src/NodeSink.ts +8 -0
  171. package/src/NodeStream.ts +8 -0
  172. package/src/NodeTerminal.ts +20 -0
  173. package/src/NodeWorker.ts +58 -0
  174. package/src/NodeWorkerRunner.ts +38 -0
  175. package/src/index.ts +64 -0
  176. package/src/internal/http/client.ts +258 -0
  177. package/src/internal/http/incomingMessage.ts +81 -0
  178. package/src/internal/http/platform.ts +46 -0
  179. package/src/internal/http/server.ts +375 -0
  180. package/src/internal/worker.ts +74 -0
  181. package/src/internal/workerRunner.ts +74 -0
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.makeAgentLayer = exports.makeAgent = exports.make = exports.layerWithoutAgent = exports.layer = exports.agentLayer = exports.HttpAgentTypeId = exports.HttpAgent = void 0;
7
+ var Client = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Client"));
8
+ var Error = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/ClientError"));
9
+ var ClientResponse = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/ClientResponse"));
10
+ var UrlParams = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/UrlParams"));
11
+ var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Context"));
12
+ var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
13
+ var _Function = /*#__PURE__*/require("effect/Function");
14
+ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
15
+ var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
16
+ var Http = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:http"));
17
+ var Https = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:https"));
18
+ var _nodeStream = /*#__PURE__*/require("node:stream");
19
+ var _promises = /*#__PURE__*/require("node:stream/promises");
20
+ var NodeSink = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../NodeSink.js"));
21
+ var _incomingMessage = /*#__PURE__*/require("./incomingMessage.js");
22
+ function _getRequireWildcardCache(e) {
23
+ if ("function" != typeof WeakMap) return null;
24
+ var r = new WeakMap(),
25
+ t = new WeakMap();
26
+ return (_getRequireWildcardCache = function (e) {
27
+ return e ? t : r;
28
+ })(e);
29
+ }
30
+ function _interopRequireWildcard(e, r) {
31
+ if (!r && e && e.__esModule) return e;
32
+ if (null === e || "object" != typeof e && "function" != typeof e) return {
33
+ default: e
34
+ };
35
+ var t = _getRequireWildcardCache(r);
36
+ if (t && t.has(e)) return t.get(e);
37
+ var n = {
38
+ __proto__: null
39
+ },
40
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
41
+ for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) {
42
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
43
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
44
+ }
45
+ return n.default = e, t && t.set(e, n), n;
46
+ }
47
+ /** @internal */
48
+ const HttpAgentTypeId = exports.HttpAgentTypeId = /*#__PURE__*/Symbol.for("@effect/platform-node/Http/NodeClient/HttpAgent");
49
+ /** @internal */
50
+ const HttpAgent = exports.HttpAgent = /*#__PURE__*/Context.GenericTag("@effect/platform-node/Http/NodeClient/HttpAgent");
51
+ /** @internal */
52
+ const makeAgent = options => Effect.map(Effect.all([Effect.acquireRelease(Effect.sync(() => new Http.Agent(options)), agent => Effect.sync(() => agent.destroy())), Effect.acquireRelease(Effect.sync(() => new Https.Agent(options)), agent => Effect.sync(() => agent.destroy()))]), ([http, https]) => ({
53
+ [HttpAgentTypeId]: HttpAgentTypeId,
54
+ http,
55
+ https
56
+ }));
57
+ /** @internal */
58
+ exports.makeAgent = makeAgent;
59
+ const makeAgentLayer = options => Layer.scoped(HttpAgent, makeAgent(options));
60
+ /** @internal */
61
+ exports.makeAgentLayer = makeAgentLayer;
62
+ const agentLayer = exports.agentLayer = /*#__PURE__*/makeAgentLayer();
63
+ const fromAgent = agent => Client.makeDefault(request => Effect.flatMap(UrlParams.makeUrl(request.url, request.urlParams, _ => Error.RequestError({
64
+ request,
65
+ reason: "InvalidUrl",
66
+ error: _
67
+ })), url => Effect.suspend(() => {
68
+ const controller = new AbortController();
69
+ const nodeRequest = url.protocol === "https:" ? Https.request(url, {
70
+ agent: agent.https,
71
+ method: request.method,
72
+ headers: request.headers,
73
+ signal: controller.signal
74
+ }) : Http.request(url, {
75
+ agent: agent.http,
76
+ method: request.method,
77
+ headers: request.headers,
78
+ signal: controller.signal
79
+ });
80
+ return (0, _Function.pipe)(Effect.zipRight(sendBody(nodeRequest, request, request.body), waitForResponse(nodeRequest, request), {
81
+ concurrent: true
82
+ }), Effect.onInterrupt(() => Effect.sync(() => controller.abort())), Effect.map(_ => new ClientResponseImpl(request, _)));
83
+ })));
84
+ const sendBody = (nodeRequest, request, body) => Effect.suspend(() => {
85
+ switch (body._tag) {
86
+ case "Empty":
87
+ {
88
+ nodeRequest.end();
89
+ return waitForFinish(nodeRequest, request);
90
+ }
91
+ case "Uint8Array":
92
+ case "Raw":
93
+ {
94
+ nodeRequest.end(body.body);
95
+ return waitForFinish(nodeRequest, request);
96
+ }
97
+ case "FormData":
98
+ {
99
+ const response = new Response(body.formData);
100
+ response.headers.forEach((value, key) => {
101
+ nodeRequest.setHeader(key, value);
102
+ });
103
+ return Effect.tryPromise({
104
+ try: () => (0, _promises.pipeline)(_nodeStream.Readable.fromWeb(response.body), nodeRequest),
105
+ catch: _ => Error.RequestError({
106
+ request,
107
+ reason: "Transport",
108
+ error: _
109
+ })
110
+ });
111
+ }
112
+ case "Stream":
113
+ {
114
+ return Stream.run(Stream.mapError(body.stream, _ => Error.RequestError({
115
+ request,
116
+ reason: "Encode",
117
+ error: _
118
+ })), NodeSink.fromWritable(() => nodeRequest, _ => Error.RequestError({
119
+ request,
120
+ reason: "Transport",
121
+ error: _
122
+ })));
123
+ }
124
+ }
125
+ });
126
+ const waitForResponse = (nodeRequest, request) => Effect.async(resume => {
127
+ function onError(error) {
128
+ resume(Effect.fail(Error.RequestError({
129
+ request,
130
+ reason: "Transport",
131
+ error
132
+ })));
133
+ }
134
+ nodeRequest.on("error", onError);
135
+ function onResponse(response) {
136
+ nodeRequest.off("error", onError);
137
+ resume(Effect.succeed(response));
138
+ }
139
+ nodeRequest.on("upgrade", onResponse);
140
+ nodeRequest.on("response", onResponse);
141
+ return Effect.sync(() => {
142
+ nodeRequest.off("error", onError);
143
+ nodeRequest.off("upgrade", onResponse);
144
+ nodeRequest.off("response", onResponse);
145
+ });
146
+ });
147
+ const waitForFinish = (nodeRequest, request) => Effect.async(resume => {
148
+ function onError(error) {
149
+ resume(Effect.fail(Error.RequestError({
150
+ request,
151
+ reason: "Transport",
152
+ error
153
+ })));
154
+ }
155
+ nodeRequest.once("error", onError);
156
+ function onFinish() {
157
+ nodeRequest.off("error", onError);
158
+ resume(Effect.unit);
159
+ }
160
+ nodeRequest.once("finish", onFinish);
161
+ return Effect.sync(() => {
162
+ nodeRequest.off("error", onError);
163
+ nodeRequest.off("finish", onFinish);
164
+ });
165
+ });
166
+ class ClientResponseImpl extends _incomingMessage.IncomingMessageImpl {
167
+ request;
168
+ [ClientResponse.TypeId];
169
+ constructor(request, source) {
170
+ super(source, _ => Error.ResponseError({
171
+ request,
172
+ response: this,
173
+ reason: "Decode",
174
+ error: _
175
+ }));
176
+ this.request = request;
177
+ this[ClientResponse.TypeId] = ClientResponse.TypeId;
178
+ }
179
+ get status() {
180
+ return this.source.statusCode;
181
+ }
182
+ get formData() {
183
+ return Effect.tryPromise({
184
+ try: () => {
185
+ const init = {
186
+ headers: new globalThis.Headers(this.source.headers)
187
+ };
188
+ if (this.source.statusCode) {
189
+ init.status = this.source.statusCode;
190
+ }
191
+ if (this.source.statusMessage) {
192
+ init.statusText = this.source.statusMessage;
193
+ }
194
+ return new Response(_nodeStream.Readable.toWeb(this.source), init).formData();
195
+ },
196
+ catch: this.onError
197
+ });
198
+ }
199
+ toString() {
200
+ return `ClientResponse(${this.status})`;
201
+ }
202
+ toJSON() {
203
+ return {
204
+ _tag: "ClientResponse",
205
+ status: this.status,
206
+ headers: this.headers
207
+ };
208
+ }
209
+ }
210
+ /** @internal */
211
+ const make = exports.make = /*#__PURE__*/Effect.map(HttpAgent, fromAgent);
212
+ /** @internal */
213
+ const layerWithoutAgent = exports.layerWithoutAgent = /*#__PURE__*/Layer.effect(Client.Client, make);
214
+ /** @internal */
215
+ const layer = exports.layer = /*#__PURE__*/Layer.provide(layerWithoutAgent, agentLayer);
216
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","names":["Client","_interopRequireWildcard","require","Error","ClientResponse","UrlParams","Context","Effect","_Function","Layer","Stream","Http","Https","_nodeStream","_promises","NodeSink","_incomingMessage","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","HttpAgentTypeId","exports","Symbol","for","HttpAgent","GenericTag","makeAgent","options","map","all","acquireRelease","sync","Agent","agent","destroy","http","https","makeAgentLayer","scoped","agentLayer","fromAgent","makeDefault","request","flatMap","makeUrl","url","urlParams","_","RequestError","reason","error","suspend","controller","AbortController","nodeRequest","protocol","method","headers","signal","pipe","zipRight","sendBody","body","waitForResponse","concurrent","onInterrupt","abort","ClientResponseImpl","_tag","end","waitForFinish","response","Response","formData","forEach","value","key","setHeader","tryPromise","try","pipeline","Readable","fromWeb","catch","run","mapError","stream","fromWritable","async","resume","onError","fail","on","onResponse","off","succeed","once","onFinish","unit","IncomingMessageImpl","TypeId","constructor","source","ResponseError","status","statusCode","init","globalThis","Headers","statusMessage","statusText","toWeb","toString","toJSON","make","layerWithoutAgent","effect","layer","provide"],"sources":["../../../../src/internal/http/client.ts"],"sourcesContent":[null],"mappings":";;;;;;AACA,IAAAA,MAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,KAAA,gBAAAF,uBAAA,eAAAC,OAAA;AAEA,IAAAE,cAAA,gBAAAH,uBAAA,eAAAC,OAAA;AACA,IAAAG,SAAA,gBAAAJ,uBAAA,eAAAC,OAAA;AACA,IAAAI,OAAA,gBAAAL,uBAAA,eAAAC,OAAA;AACA,IAAAK,MAAA,gBAAAN,uBAAA,eAAAC,OAAA;AACA,IAAAM,SAAA,gBAAAN,OAAA;AACA,IAAAO,KAAA,gBAAAR,uBAAA,eAAAC,OAAA;AAEA,IAAAQ,MAAA,gBAAAT,uBAAA,eAAAC,OAAA;AACA,IAAAS,IAAA,gBAAAV,uBAAA,eAAAC,OAAA;AACA,IAAAU,KAAA,gBAAAX,uBAAA,eAAAC,OAAA;AACA,IAAAW,WAAA,gBAAAX,OAAA;AACA,IAAAY,SAAA,gBAAAZ,OAAA;AAEA,IAAAa,QAAA,gBAAAd,uBAAA,eAAAC,OAAA;AACA,IAAAc,gBAAA,gBAAAd,OAAA;AAA0D,SAAAe,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAjB,wBAAAiB,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAE1D;AACO,MAAMY,eAAe,GAAAC,OAAA,CAAAD,eAAA,gBAA+BE,MAAM,CAACC,GAAG,CACnE,iDAAiD,CACpB;AAE/B;AACO,MAAMC,SAAS,GAAAH,OAAA,CAAAG,SAAA,gBAAGpC,OAAO,CAACqC,UAAU,CAAuB,iDAAiD,CAAC;AAEpH;AACO,MAAMC,SAAS,GAAIC,OAA4B,IACpDtC,MAAM,CAACuC,GAAG,CACRvC,MAAM,CAACwC,GAAG,CAAC,CACTxC,MAAM,CAACyC,cAAc,CACnBzC,MAAM,CAAC0C,IAAI,CAAC,MAAM,IAAItC,IAAI,CAACuC,KAAK,CAACL,OAAO,CAAC,CAAC,EACzCM,KAAK,IAAK5C,MAAM,CAAC0C,IAAI,CAAC,MAAME,KAAK,CAACC,OAAO,EAAE,CAAC,CAC9C,EACD7C,MAAM,CAACyC,cAAc,CACnBzC,MAAM,CAAC0C,IAAI,CAAC,MAAM,IAAIrC,KAAK,CAACsC,KAAK,CAACL,OAAO,CAAC,CAAC,EAC1CM,KAAK,IAAK5C,MAAM,CAAC0C,IAAI,CAAC,MAAME,KAAK,CAACC,OAAO,EAAE,CAAC,CAC9C,CACF,CAAC,EACF,CAAC,CAACC,IAAI,EAAEC,KAAK,CAAC,MAAM;EAClB,CAAChB,eAAe,GAAGA,eAAe;EAClCe,IAAI;EACJC;CACD,CAAC,CACH;AAEH;AAAAf,OAAA,CAAAK,SAAA,GAAAA,SAAA;AACO,MAAMW,cAAc,GAAIV,OAA4B,IACzDpC,KAAK,CAAC+C,MAAM,CAACd,SAAS,EAAEE,SAAS,CAACC,OAAO,CAAC,CAAC;AAE7C;AAAAN,OAAA,CAAAgB,cAAA,GAAAA,cAAA;AACO,MAAME,UAAU,GAAAlB,OAAA,CAAAkB,UAAA,gBAAGF,cAAc,EAAE;AAE1C,MAAMG,SAAS,GAAIP,KAA2B,IAC5CnD,MAAM,CAAC2D,WAAW,CAAEC,OAAO,IACzBrD,MAAM,CAACsD,OAAO,CACZxD,SAAS,CAACyD,OAAO,CAACF,OAAO,CAACG,GAAG,EAAEH,OAAO,CAACI,SAAS,EAAGC,CAAC,IAClD9D,KAAK,CAAC+D,YAAY,CAAC;EACjBN,OAAO;EACPO,MAAM,EAAE,YAAY;EACpBC,KAAK,EAAEH;CACR,CAAC,CAAC,EACJF,GAAG,IACFxD,MAAM,CAAC8D,OAAO,CAAC,MAAK;EAClB,MAAMC,UAAU,GAAG,IAAIC,eAAe,EAAE;EACxC,MAAMC,WAAW,GAAGT,GAAG,CAACU,QAAQ,KAAK,QAAQ,GAC3C7D,KAAK,CAACgD,OAAO,CAACG,GAAG,EAAE;IACjBZ,KAAK,EAAEA,KAAK,CAACG,KAAK;IAClBoB,MAAM,EAAEd,OAAO,CAACc,MAAM;IACtBC,OAAO,EAAEf,OAAO,CAACe,OAAO;IACxBC,MAAM,EAAEN,UAAU,CAACM;GACpB,CAAC,GACFjE,IAAI,CAACiD,OAAO,CAACG,GAAG,EAAE;IAChBZ,KAAK,EAAEA,KAAK,CAACE,IAAI;IACjBqB,MAAM,EAAEd,OAAO,CAACc,MAAM;IACtBC,OAAO,EAAEf,OAAO,CAACe,OAAO;IACxBC,MAAM,EAAEN,UAAU,CAACM;GACpB,CAAC;EACJ,OAAO,IAAApE,SAAA,CAAAqE,IAAI,EACTtE,MAAM,CAACuE,QAAQ,CAACC,QAAQ,CAACP,WAAW,EAAEZ,OAAO,EAAEA,OAAO,CAACoB,IAAI,CAAC,EAAEC,eAAe,CAACT,WAAW,EAAEZ,OAAO,CAAC,EAAE;IACnGsB,UAAU,EAAE;GACb,CAAC,EACF3E,MAAM,CAAC4E,WAAW,CAAC,MAAM5E,MAAM,CAAC0C,IAAI,CAAC,MAAMqB,UAAU,CAACc,KAAK,EAAE,CAAC,CAAC,EAC/D7E,MAAM,CAACuC,GAAG,CAAEmB,CAAC,IAAK,IAAIoB,kBAAkB,CAACzB,OAAO,EAAEK,CAAC,CAAC,CAAC,CACtD;AACH,CAAC,CAAC,CACL,CACF;AAEH,MAAMc,QAAQ,GAAGA,CACfP,WAA+B,EAC/BZ,OAAoC,EACpCoB,IAAe,KAEfzE,MAAM,CAAC8D,OAAO,CAAC,MAA8C;EAC3D,QAAQW,IAAI,CAACM,IAAI;IACf,KAAK,OAAO;MAAE;QACZd,WAAW,CAACe,GAAG,EAAE;QACjB,OAAOC,aAAa,CAAChB,WAAW,EAAEZ,OAAO,CAAC;MAC5C;IACA,KAAK,YAAY;IACjB,KAAK,KAAK;MAAE;QACVY,WAAW,CAACe,GAAG,CAACP,IAAI,CAACA,IAAI,CAAC;QAC1B,OAAOQ,aAAa,CAAChB,WAAW,EAAEZ,OAAO,CAAC;MAC5C;IACA,KAAK,UAAU;MAAE;QACf,MAAM6B,QAAQ,GAAG,IAAIC,QAAQ,CAACV,IAAI,CAACW,QAAQ,CAAC;QAE5CF,QAAQ,CAACd,OAAO,CAACiB,OAAO,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAI;UACtCtB,WAAW,CAACuB,SAAS,CAACD,GAAG,EAAED,KAAK,CAAC;QACnC,CAAC,CAAC;QAEF,OAAOtF,MAAM,CAACyF,UAAU,CAAC;UACvBC,GAAG,EAAEA,CAAA,KAAM,IAAAnF,SAAA,CAAAoF,QAAQ,EAACrF,WAAA,CAAAsF,QAAQ,CAACC,OAAO,CAACX,QAAQ,CAACT,IAAY,CAAC,EAAER,WAAW,CAAC;UACzE6B,KAAK,EAAGpC,CAAC,IACP9D,KAAK,CAAC+D,YAAY,CAAC;YACjBN,OAAO;YACPO,MAAM,EAAE,WAAW;YACnBC,KAAK,EAAEH;WACR;SACJ,CAAC;MACJ;IACA,KAAK,QAAQ;MAAE;QACb,OAAOvD,MAAM,CAAC4F,GAAG,CACf5F,MAAM,CAAC6F,QAAQ,CAACvB,IAAI,CAACwB,MAAM,EAAGvC,CAAC,IAC7B9D,KAAK,CAAC+D,YAAY,CAAC;UACjBN,OAAO;UACPO,MAAM,EAAE,QAAQ;UAChBC,KAAK,EAAEH;SACR,CAAC,CAAC,EACLlD,QAAQ,CAAC0F,YAAY,CAAC,MAAMjC,WAAW,EAAGP,CAAC,IACzC9D,KAAK,CAAC+D,YAAY,CAAC;UACjBN,OAAO;UACPO,MAAM,EAAE,WAAW;UACnBC,KAAK,EAAEH;SACR,CAAC,CAAC,CACN;MACH;EACF;AACF,CAAC,CAAC;AAEJ,MAAMgB,eAAe,GAAGA,CAACT,WAA+B,EAAEZ,OAAoC,KAC5FrD,MAAM,CAACmG,KAAK,CAAmDC,MAAM,IAAI;EACvE,SAASC,OAAOA,CAACxC,KAAY;IAC3BuC,MAAM,CAACpG,MAAM,CAACsG,IAAI,CAAC1G,KAAK,CAAC+D,YAAY,CAAC;MACpCN,OAAO;MACPO,MAAM,EAAE,WAAW;MACnBC;KACD,CAAC,CAAC,CAAC;EACN;EACAI,WAAW,CAACsC,EAAE,CAAC,OAAO,EAAEF,OAAO,CAAC;EAEhC,SAASG,UAAUA,CAACtB,QAA8B;IAChDjB,WAAW,CAACwC,GAAG,CAAC,OAAO,EAAEJ,OAAO,CAAC;IACjCD,MAAM,CAACpG,MAAM,CAAC0G,OAAO,CAACxB,QAAQ,CAAC,CAAC;EAClC;EACAjB,WAAW,CAACsC,EAAE,CAAC,SAAS,EAAEC,UAAU,CAAC;EACrCvC,WAAW,CAACsC,EAAE,CAAC,UAAU,EAAEC,UAAU,CAAC;EAEtC,OAAOxG,MAAM,CAAC0C,IAAI,CAAC,MAAK;IACtBuB,WAAW,CAACwC,GAAG,CAAC,OAAO,EAAEJ,OAAO,CAAC;IACjCpC,WAAW,CAACwC,GAAG,CAAC,SAAS,EAAED,UAAU,CAAC;IACtCvC,WAAW,CAACwC,GAAG,CAAC,UAAU,EAAED,UAAU,CAAC;EACzC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEJ,MAAMvB,aAAa,GAAGA,CAAChB,WAA+B,EAAEZ,OAAoC,KAC1FrD,MAAM,CAACmG,KAAK,CAAmCC,MAAM,IAAI;EACvD,SAASC,OAAOA,CAACxC,KAAY;IAC3BuC,MAAM,CAACpG,MAAM,CAACsG,IAAI,CAAC1G,KAAK,CAAC+D,YAAY,CAAC;MACpCN,OAAO;MACPO,MAAM,EAAE,WAAW;MACnBC;KACD,CAAC,CAAC,CAAC;EACN;EACAI,WAAW,CAAC0C,IAAI,CAAC,OAAO,EAAEN,OAAO,CAAC;EAElC,SAASO,QAAQA,CAAA;IACf3C,WAAW,CAACwC,GAAG,CAAC,OAAO,EAAEJ,OAAO,CAAC;IACjCD,MAAM,CAACpG,MAAM,CAAC6G,IAAI,CAAC;EACrB;EACA5C,WAAW,CAAC0C,IAAI,CAAC,QAAQ,EAAEC,QAAQ,CAAC;EAEpC,OAAO5G,MAAM,CAAC0C,IAAI,CAAC,MAAK;IACtBuB,WAAW,CAACwC,GAAG,CAAC,OAAO,EAAEJ,OAAO,CAAC;IACjCpC,WAAW,CAACwC,GAAG,CAAC,QAAQ,EAAEG,QAAQ,CAAC;EACrC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEJ,MAAM9B,kBAAmB,SAAQrE,gBAAA,CAAAqG,mBAAwC;EAI5DzD,OAAA;EAHF,CAACxD,cAAc,CAACkH,MAAM;EAE/BC,YACW3D,OAAoC,EAC7C4D,MAA4B;IAE5B,KAAK,CAACA,MAAM,EAAGvD,CAAC,IACd9D,KAAK,CAACsH,aAAa,CAAC;MAClB7D,OAAO;MACP6B,QAAQ,EAAE,IAAI;MACdtB,MAAM,EAAE,QAAQ;MAChBC,KAAK,EAAEH;KACR,CAAC,CAAC;IATI,KAAAL,OAAO,GAAPA,OAAO;IAUhB,IAAI,CAACxD,cAAc,CAACkH,MAAM,CAAC,GAAGlH,cAAc,CAACkH,MAAM;EACrD;EAEA,IAAII,MAAMA,CAAA;IACR,OAAO,IAAI,CAACF,MAAM,CAACG,UAAW;EAChC;EAEA,IAAIhC,QAAQA,CAAA;IACV,OAAOpF,MAAM,CAACyF,UAAU,CAAC;MACvBC,GAAG,EAAEA,CAAA,KAAK;QACR,MAAM2B,IAAI,GAIN;UACFjD,OAAO,EAAE,IAAIkD,UAAU,CAACC,OAAO,CAAC,IAAI,CAACN,MAAM,CAAC7C,OAAc;SAC3D;QAED,IAAI,IAAI,CAAC6C,MAAM,CAACG,UAAU,EAAE;UAC1BC,IAAI,CAACF,MAAM,GAAG,IAAI,CAACF,MAAM,CAACG,UAAU;QACtC;QAEA,IAAI,IAAI,CAACH,MAAM,CAACO,aAAa,EAAE;UAC7BH,IAAI,CAACI,UAAU,GAAG,IAAI,CAACR,MAAM,CAACO,aAAa;QAC7C;QAEA,OAAO,IAAIrC,QAAQ,CAAC7E,WAAA,CAAAsF,QAAQ,CAAC8B,KAAK,CAAC,IAAI,CAACT,MAAM,CAAQ,EAAEI,IAAI,CAAC,CAACjC,QAAQ,EAAE;MAC1E,CAAC;MACDU,KAAK,EAAE,IAAI,CAACO;KACb,CAAC;EACJ;EAEAsB,QAAQA,CAAA;IACN,OAAO,kBAAkB,IAAI,CAACR,MAAM,GAAG;EACzC;EAEAS,MAAMA,CAAA;IACJ,OAAO;MACL7C,IAAI,EAAE,gBAAgB;MACtBoC,MAAM,EAAE,IAAI,CAACA,MAAM;MACnB/C,OAAO,EAAE,IAAI,CAACA;KACf;EACH;;AAGF;AACO,MAAMyD,IAAI,GAAA7F,OAAA,CAAA6F,IAAA,gBAAG7H,MAAM,CAACuC,GAAG,CAACJ,SAAS,EAAEgB,SAAS,CAAC;AAEpD;AACO,MAAM2E,iBAAiB,GAAA9F,OAAA,CAAA8F,iBAAA,gBAAG5H,KAAK,CAAC6H,MAAM,CAACtI,MAAM,CAACA,MAAM,EAAEoI,IAAI,CAAC;AAElE;AACO,MAAMG,KAAK,GAAAhG,OAAA,CAAAgG,KAAA,gBAAG9H,KAAK,CAAC+H,OAAO,CAACH,iBAAiB,EAAE5E,UAAU,CAAC"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.IncomingMessageImpl = void 0;
7
+ var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Headers"));
8
+ var IncomingMessage = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/IncomingMessage"));
9
+ var UrlParams = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/UrlParams"));
10
+ var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
11
+ var FiberRef = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/FiberRef"));
12
+ var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Option"));
13
+ var NodeStream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../NodeStream.js"));
14
+ function _getRequireWildcardCache(e) {
15
+ if ("function" != typeof WeakMap) return null;
16
+ var r = new WeakMap(),
17
+ t = new WeakMap();
18
+ return (_getRequireWildcardCache = function (e) {
19
+ return e ? t : r;
20
+ })(e);
21
+ }
22
+ function _interopRequireWildcard(e, r) {
23
+ if (!r && e && e.__esModule) return e;
24
+ if (null === e || "object" != typeof e && "function" != typeof e) return {
25
+ default: e
26
+ };
27
+ var t = _getRequireWildcardCache(r);
28
+ if (t && t.has(e)) return t.get(e);
29
+ var n = {
30
+ __proto__: null
31
+ },
32
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
33
+ for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) {
34
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
35
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
36
+ }
37
+ return n.default = e, t && t.set(e, n), n;
38
+ }
39
+ /** @internal */
40
+ class IncomingMessageImpl {
41
+ source;
42
+ onError;
43
+ remoteAddressOverride;
44
+ [IncomingMessage.TypeId];
45
+ constructor(source, onError, remoteAddressOverride) {
46
+ this.source = source;
47
+ this.onError = onError;
48
+ this.remoteAddressOverride = remoteAddressOverride;
49
+ this[IncomingMessage.TypeId] = IncomingMessage.TypeId;
50
+ }
51
+ get headers() {
52
+ return Headers.fromInput(this.source.headers);
53
+ }
54
+ get remoteAddress() {
55
+ return Option.fromNullable(this.remoteAddressOverride ?? this.source.socket.remoteAddress);
56
+ }
57
+ textEffect;
58
+ get text() {
59
+ if (this.textEffect) {
60
+ return this.textEffect;
61
+ }
62
+ this.textEffect = Effect.runSync(Effect.cached(Effect.flatMap(FiberRef.get(IncomingMessage.maxBodySize), maxBodySize => NodeStream.toString(() => this.source, {
63
+ onFailure: this.onError,
64
+ maxBytes: Option.getOrUndefined(maxBodySize)
65
+ }))));
66
+ return this.textEffect;
67
+ }
68
+ get json() {
69
+ return Effect.tryMap(this.text, {
70
+ try: _ => _ === "" ? null : JSON.parse(_),
71
+ catch: this.onError
72
+ });
73
+ }
74
+ get urlParamsBody() {
75
+ return Effect.flatMap(this.text, _ => Effect.try({
76
+ try: () => UrlParams.fromInput(new URLSearchParams(_)),
77
+ catch: this.onError
78
+ }));
79
+ }
80
+ get stream() {
81
+ return NodeStream.fromReadable(() => this.source, this.onError);
82
+ }
83
+ get arrayBuffer() {
84
+ return Effect.flatMap(FiberRef.get(IncomingMessage.maxBodySize), maxBodySize => NodeStream.toUint8Array(() => this.source, {
85
+ onFailure: this.onError,
86
+ maxBytes: Option.getOrUndefined(maxBodySize)
87
+ }));
88
+ }
89
+ }
90
+ exports.IncomingMessageImpl = IncomingMessageImpl;
91
+ //# sourceMappingURL=incomingMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incomingMessage.js","names":["Headers","_interopRequireWildcard","require","IncomingMessage","UrlParams","Effect","FiberRef","Option","NodeStream","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","IncomingMessageImpl","source","onError","remoteAddressOverride","TypeId","constructor","headers","fromInput","remoteAddress","fromNullable","socket","textEffect","text","runSync","cached","flatMap","maxBodySize","toString","onFailure","maxBytes","getOrUndefined","json","tryMap","try","_","JSON","parse","catch","urlParamsBody","URLSearchParams","stream","fromReadable","arrayBuffer","toUint8Array","exports"],"sources":["../../../../src/internal/http/incomingMessage.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,eAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,SAAA,gBAAAH,uBAAA,eAAAC,OAAA;AACA,IAAAG,MAAA,gBAAAJ,uBAAA,eAAAC,OAAA;AACA,IAAAI,QAAA,gBAAAL,uBAAA,eAAAC,OAAA;AACA,IAAAK,MAAA,gBAAAN,uBAAA,eAAAC,OAAA;AAGA,IAAAM,UAAA,gBAAAP,uBAAA,eAAAC,OAAA;AAAiD,SAAAO,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAEjD;AACM,MAAOY,mBAAmB;EAInBC,MAAA;EACAC,OAAA;EACAC,qBAAA;EALF,CAAC9B,eAAe,CAAC+B,MAAM;EAEhCC,YACWJ,MAA4B,EAC5BC,OAA8B,EAC9BC,qBAA8B;IAF9B,KAAAF,MAAM,GAANA,MAAM;IACN,KAAAC,OAAO,GAAPA,OAAO;IACP,KAAAC,qBAAqB,GAArBA,qBAAqB;IAE9B,IAAI,CAAC9B,eAAe,CAAC+B,MAAM,CAAC,GAAG/B,eAAe,CAAC+B,MAAM;EACvD;EAEA,IAAIE,OAAOA,CAAA;IACT,OAAOpC,OAAO,CAACqC,SAAS,CAAC,IAAI,CAACN,MAAM,CAACK,OAAc,CAAC;EACtD;EAEA,IAAIE,aAAaA,CAAA;IACf,OAAO/B,MAAM,CAACgC,YAAY,CAAC,IAAI,CAACN,qBAAqB,IAAI,IAAI,CAACF,MAAM,CAACS,MAAM,CAACF,aAAa,CAAC;EAC5F;EAEQG,UAAU;EAClB,IAAIC,IAAIA,CAAA;IACN,IAAI,IAAI,CAACD,UAAU,EAAE;MACnB,OAAO,IAAI,CAACA,UAAU;IACxB;IACA,IAAI,CAACA,UAAU,GAAGpC,MAAM,CAACsC,OAAO,CAACtC,MAAM,CAACuC,MAAM,CAC5CvC,MAAM,CAACwC,OAAO,CACZvC,QAAQ,CAACW,GAAG,CAACd,eAAe,CAAC2C,WAAW,CAAC,EACxCA,WAAW,IACVtC,UAAU,CAACuC,QAAQ,CAAC,MAAM,IAAI,CAAChB,MAAM,EAAE;MACrCiB,SAAS,EAAE,IAAI,CAAChB,OAAO;MACvBiB,QAAQ,EAAE1C,MAAM,CAAC2C,cAAc,CAACJ,WAAW;KAC5C,CAAC,CACL,CACF,CAAC;IACF,OAAO,IAAI,CAACL,UAAU;EACxB;EAEA,IAAIU,IAAIA,CAAA;IACN,OAAO9C,MAAM,CAAC+C,MAAM,CAAC,IAAI,CAACV,IAAI,EAAE;MAC9BW,GAAG,EAAGC,CAAC,IAAKA,CAAC,KAAK,EAAE,GAAG,IAAI,GAAGC,IAAI,CAACC,KAAK,CAACF,CAAC,CAAY;MACtDG,KAAK,EAAE,IAAI,CAACzB;KACb,CAAC;EACJ;EAEA,IAAI0B,aAAaA,CAAA;IACf,OAAOrD,MAAM,CAACwC,OAAO,CAAC,IAAI,CAACH,IAAI,EAAGY,CAAC,IACjCjD,MAAM,CAACgD,GAAG,CAAC;MACTA,GAAG,EAAEA,CAAA,KAAMjD,SAAS,CAACiC,SAAS,CAAC,IAAIsB,eAAe,CAACL,CAAC,CAAC,CAAC;MACtDG,KAAK,EAAE,IAAI,CAACzB;KACb,CAAC,CAAC;EACP;EAEA,IAAI4B,MAAMA,CAAA;IACR,OAAOpD,UAAU,CAACqD,YAAY,CAC5B,MAAM,IAAI,CAAC9B,MAAM,EACjB,IAAI,CAACC,OAAO,CACb;EACH;EAEA,IAAI8B,WAAWA,CAAA;IACb,OAAOzD,MAAM,CAACwC,OAAO,CACnBvC,QAAQ,CAACW,GAAG,CAACd,eAAe,CAAC2C,WAAW,CAAC,EACxCA,WAAW,IACVtC,UAAU,CAACuD,YAAY,CAAC,MAAM,IAAI,CAAChC,MAAM,EAAE;MACzCiB,SAAS,EAAE,IAAI,CAAChB,OAAO;MACvBiB,QAAQ,EAAE1C,MAAM,CAAC2C,cAAc,CAACJ,WAAW;KAC5C,CAAC,CACL;EACH;;AACDkB,OAAA,CAAAlC,mBAAA,GAAAA,mBAAA"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.make = exports.layer = void 0;
7
+ var EtagImpl = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform-node-shared/Http/Etag"));
8
+ var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Headers"));
9
+ var Platform = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Platform"));
10
+ var ServerResponse = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/ServerResponse"));
11
+ var _Function = /*#__PURE__*/require("effect/Function");
12
+ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
13
+ var _mime = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("mime"));
14
+ var Fs = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:fs"));
15
+ var _nodeStream = /*#__PURE__*/require("node:stream");
16
+ var FileSystem = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../NodeFileSystem.js"));
17
+ function _interopRequireDefault(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ function _getRequireWildcardCache(e) {
23
+ if ("function" != typeof WeakMap) return null;
24
+ var r = new WeakMap(),
25
+ t = new WeakMap();
26
+ return (_getRequireWildcardCache = function (e) {
27
+ return e ? t : r;
28
+ })(e);
29
+ }
30
+ function _interopRequireWildcard(e, r) {
31
+ if (!r && e && e.__esModule) return e;
32
+ if (null === e || "object" != typeof e && "function" != typeof e) return {
33
+ default: e
34
+ };
35
+ var t = _getRequireWildcardCache(r);
36
+ if (t && t.has(e)) return t.get(e);
37
+ var n = {
38
+ __proto__: null
39
+ },
40
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
41
+ for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) {
42
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
43
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
44
+ }
45
+ return n.default = e, t && t.set(e, n), n;
46
+ }
47
+ /** @internal */
48
+ const make = exports.make = /*#__PURE__*/Platform.make({
49
+ fileResponse(path, status, statusText, headers, start, end, contentLength) {
50
+ const stream = Fs.createReadStream(path, {
51
+ start,
52
+ end
53
+ });
54
+ return ServerResponse.raw(stream, {
55
+ headers: {
56
+ ...headers,
57
+ "content-type": headers["content-type"] ?? _mime.default.getType(path) ?? "application/octet-stream",
58
+ "content-length": contentLength.toString()
59
+ },
60
+ status,
61
+ statusText
62
+ });
63
+ },
64
+ fileWebResponse(file, status, statusText, headers, _options) {
65
+ return ServerResponse.raw(_nodeStream.Readable.fromWeb(file.stream()), {
66
+ headers: Headers.merge(headers, Headers.unsafeFromRecord({
67
+ "content-type": headers["content-type"] ?? _mime.default.getType(file.name) ?? "application/octet-stream",
68
+ "content-length": file.size.toString()
69
+ })),
70
+ status,
71
+ statusText
72
+ });
73
+ }
74
+ });
75
+ /** @internal */
76
+ const layer = exports.layer = /*#__PURE__*/(0, _Function.pipe)( /*#__PURE__*/Layer.effect(Platform.Platform, make), /*#__PURE__*/Layer.provide(FileSystem.layer), /*#__PURE__*/Layer.provide(EtagImpl.layer));
77
+ //# sourceMappingURL=platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.js","names":["EtagImpl","_interopRequireWildcard","require","Headers","Platform","ServerResponse","_Function","Layer","_mime","_interopRequireDefault","Fs","_nodeStream","FileSystem","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","make","exports","fileResponse","path","status","statusText","headers","start","end","contentLength","stream","createReadStream","raw","getType","toString","fileWebResponse","file","_options","Readable","fromWeb","merge","unsafeFromRecord","name","size","layer","pipe","effect","provide"],"sources":["../../../../src/internal/http/platform.ts"],"sourcesContent":[null],"mappings":"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"}