@effect/platform 0.18.7 → 0.19.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 (155) hide show
  1. package/Command/dist/effect-platform-Command.cjs.dev.js +419 -26
  2. package/Command/dist/effect-platform-Command.cjs.prod.js +419 -26
  3. package/Command/dist/effect-platform-Command.esm.js +382 -9
  4. package/CommandExecutor/dist/effect-platform-CommandExecutor.cjs.dev.js +72 -7
  5. package/CommandExecutor/dist/effect-platform-CommandExecutor.cjs.prod.js +72 -7
  6. package/CommandExecutor/dist/effect-platform-CommandExecutor.esm.js +71 -2
  7. package/Effectify/dist/effect-platform-Effectify.cjs.dev.js +55 -3
  8. package/Effectify/dist/effect-platform-Effectify.cjs.prod.js +55 -3
  9. package/Effectify/dist/effect-platform-Effectify.esm.js +38 -2
  10. package/Error/dist/effect-platform-Error.cjs.dev.js +87 -5
  11. package/Error/dist/effect-platform-Error.cjs.prod.js +87 -5
  12. package/Error/dist/effect-platform-Error.esm.js +68 -2
  13. package/FileSystem/dist/effect-platform-FileSystem.cjs.dev.js +287 -20
  14. package/FileSystem/dist/effect-platform-FileSystem.cjs.prod.js +287 -20
  15. package/FileSystem/dist/effect-platform-FileSystem.esm.js +256 -9
  16. package/Http/App/dist/effect-platform-Http-App.cjs.dev.js +15 -0
  17. package/Http/App/dist/effect-platform-Http-App.cjs.mjs +6 -1
  18. package/Http/App/dist/effect-platform-Http-App.cjs.prod.js +15 -0
  19. package/Http/App/dist/effect-platform-Http-App.esm.js +6 -1
  20. package/Http/Body/dist/effect-platform-Http-Body.cjs.dev.js +4 -4
  21. package/Http/Body/dist/effect-platform-Http-Body.cjs.prod.js +4 -4
  22. package/Http/Body/dist/effect-platform-Http-Body.esm.js +4 -4
  23. package/Http/Client/dist/effect-platform-Http-Client.cjs.dev.js +6 -6
  24. package/Http/Client/dist/effect-platform-Http-Client.cjs.prod.js +6 -6
  25. package/Http/Client/dist/effect-platform-Http-Client.esm.js +6 -6
  26. package/Http/ClientRequest/dist/effect-platform-Http-ClientRequest.cjs.dev.js +5 -5
  27. package/Http/ClientRequest/dist/effect-platform-Http-ClientRequest.cjs.prod.js +5 -5
  28. package/Http/ClientRequest/dist/effect-platform-Http-ClientRequest.esm.js +5 -5
  29. package/Http/ClientResponse/dist/effect-platform-Http-ClientResponse.cjs.dev.js +4 -4
  30. package/Http/ClientResponse/dist/effect-platform-Http-ClientResponse.cjs.prod.js +4 -4
  31. package/Http/ClientResponse/dist/effect-platform-Http-ClientResponse.esm.js +4 -4
  32. package/Http/FormData/dist/effect-platform-Http-FormData.cjs.dev.js +3 -3
  33. package/Http/FormData/dist/effect-platform-Http-FormData.cjs.prod.js +3 -3
  34. package/Http/FormData/dist/effect-platform-Http-FormData.esm.js +3 -3
  35. package/Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.dev.js +2 -2
  36. package/Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.prod.js +2 -2
  37. package/Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.esm.js +2 -2
  38. package/Http/Middleware/dist/effect-platform-Http-Middleware.cjs.dev.js +11 -11
  39. package/Http/Middleware/dist/effect-platform-Http-Middleware.cjs.mjs +0 -1
  40. package/Http/Middleware/dist/effect-platform-Http-Middleware.cjs.prod.js +11 -11
  41. package/Http/Middleware/dist/effect-platform-Http-Middleware.esm.js +11 -10
  42. package/Http/Platform/dist/effect-platform-Http-Platform.cjs.dev.js +3 -3
  43. package/Http/Platform/dist/effect-platform-Http-Platform.cjs.prod.js +3 -3
  44. package/Http/Platform/dist/effect-platform-Http-Platform.esm.js +2 -2
  45. package/Http/Router/dist/effect-platform-Http-Router.cjs.dev.js +5 -5
  46. package/Http/Router/dist/effect-platform-Http-Router.cjs.prod.js +5 -5
  47. package/Http/Router/dist/effect-platform-Http-Router.esm.js +5 -5
  48. package/Http/ServerRequest/dist/effect-platform-Http-ServerRequest.cjs.dev.js +4 -4
  49. package/Http/ServerRequest/dist/effect-platform-Http-ServerRequest.cjs.prod.js +4 -4
  50. package/Http/ServerRequest/dist/effect-platform-Http-ServerRequest.esm.js +4 -4
  51. package/Http/ServerResponse/dist/effect-platform-Http-ServerResponse.cjs.dev.js +4 -4
  52. package/Http/ServerResponse/dist/effect-platform-Http-ServerResponse.cjs.prod.js +4 -4
  53. package/Http/ServerResponse/dist/effect-platform-Http-ServerResponse.esm.js +4 -4
  54. package/HttpClient/dist/effect-platform-HttpClient.cjs.dev.js +9 -9
  55. package/HttpClient/dist/effect-platform-HttpClient.cjs.prod.js +9 -9
  56. package/HttpClient/dist/effect-platform-HttpClient.esm.js +9 -9
  57. package/HttpServer/dist/effect-platform-HttpServer.cjs.dev.js +15 -15
  58. package/HttpServer/dist/effect-platform-HttpServer.cjs.prod.js +15 -15
  59. package/HttpServer/dist/effect-platform-HttpServer.esm.js +15 -15
  60. package/KeyValueStore/dist/effect-platform-KeyValueStore.cjs.dev.js +227 -18
  61. package/KeyValueStore/dist/effect-platform-KeyValueStore.cjs.prod.js +227 -18
  62. package/KeyValueStore/dist/effect-platform-KeyValueStore.esm.js +199 -10
  63. package/Path/dist/effect-platform-Path.cjs.dev.js +142 -9
  64. package/Path/dist/effect-platform-Path.cjs.prod.js +142 -9
  65. package/Path/dist/effect-platform-Path.esm.js +122 -7
  66. package/Runtime/dist/effect-platform-Runtime.cjs.dev.js +44 -4
  67. package/Runtime/dist/effect-platform-Runtime.cjs.prod.js +44 -4
  68. package/Runtime/dist/effect-platform-Runtime.esm.js +26 -3
  69. package/dist/App-18152f12.cjs.dev.js +93 -0
  70. package/dist/App-1ca51fa7.esm.js +65 -0
  71. package/dist/App-d8b904fa.cjs.prod.js +93 -0
  72. package/dist/{Body-ec1353f9.esm.js → Body-40ced606.esm.js} +1 -1
  73. package/dist/{Body-86ef2922.cjs.dev.js → Body-4a7ad057.cjs.dev.js} +1 -1
  74. package/dist/{Body-b77eac75.cjs.prod.js → Body-c26fa93f.cjs.prod.js} +1 -1
  75. package/dist/{Client-537f76ae.cjs.prod.js → Client-03fea3d9.cjs.prod.js} +3 -3
  76. package/dist/{Client-cdbd4ff7.esm.js → Client-55ef15d5.esm.js} +3 -3
  77. package/dist/{Client-0fbb38ab.cjs.dev.js → Client-c05eadcd.cjs.dev.js} +3 -3
  78. package/dist/{ClientRequest-fc429335.esm.js → ClientRequest-490c76cd.esm.js} +1 -1
  79. package/dist/{ClientRequest-750d8d59.cjs.prod.js → ClientRequest-a729f345.cjs.prod.js} +1 -1
  80. package/dist/{ClientRequest-00e89da8.cjs.dev.js → ClientRequest-c5336a28.cjs.dev.js} +1 -1
  81. package/dist/{ClientResponse-7e4fe7b5.esm.js → ClientResponse-6e84da40.esm.js} +1 -1
  82. package/dist/{ClientResponse-f9f19afb.cjs.prod.js → ClientResponse-c19fd519.cjs.prod.js} +1 -1
  83. package/dist/{ClientResponse-75423399.cjs.dev.js → ClientResponse-df62564e.cjs.dev.js} +1 -1
  84. package/dist/{FormData-ee0b1cf2.cjs.dev.js → FormData-6d030595.cjs.prod.js} +1 -1
  85. package/dist/{FormData-902afd18.cjs.prod.js → FormData-7ea13198.cjs.dev.js} +1 -1
  86. package/dist/{FormData-f54de878.esm.js → FormData-bd727d2f.esm.js} +1 -1
  87. package/dist/{Middleware-f9a073d7.cjs.prod.js → Middleware-6de1c21d.cjs.prod.js} +14 -20
  88. package/dist/{Middleware-e2edf820.cjs.dev.js → Middleware-b1d126b4.cjs.dev.js} +14 -20
  89. package/dist/{Middleware-240f91f6.esm.js → Middleware-d38ef616.esm.js} +15 -20
  90. package/dist/{Router-bf32317a.esm.js → Router-2ee665b4.esm.js} +2 -2
  91. package/dist/{Router-bd2b3014.cjs.dev.js → Router-43e62bd9.cjs.dev.js} +2 -2
  92. package/dist/{Router-6c80a4c9.cjs.prod.js → Router-53ec1aea.cjs.prod.js} +2 -2
  93. package/dist/{ServerRequest-03161edc.esm.js → ServerRequest-a641c507.esm.js} +1 -1
  94. package/dist/{ServerRequest-8d9c2c6b.cjs.dev.js → ServerRequest-cb289dae.cjs.dev.js} +1 -1
  95. package/dist/{ServerRequest-938f3ed0.cjs.prod.js → ServerRequest-ec4da01b.cjs.prod.js} +1 -1
  96. package/dist/{ServerResponse-93038062.esm.js → ServerResponse-03c252ea.esm.js} +2 -2
  97. package/dist/{ServerResponse-b63b7192.cjs.dev.js → ServerResponse-9af42ecb.cjs.dev.js} +2 -2
  98. package/dist/{ServerResponse-eae85b08.cjs.prod.js → ServerResponse-db87bde2.cjs.prod.js} +2 -2
  99. package/dist/{body-33521da5.cjs.prod.js → body-95276637.cjs.prod.js} +3 -3
  100. package/dist/{body-c7d7a944.cjs.dev.js → body-cea7c1c9.cjs.dev.js} +3 -3
  101. package/dist/{body-20d78ec1.esm.js → body-db8cfb3d.esm.js} +1 -1
  102. package/dist/{clientRequest-3e72ec54.cjs.prod.js → clientRequest-539df396.cjs.prod.js} +1 -1
  103. package/dist/{clientRequest-1e9e0b0d.esm.js → clientRequest-6121a7f6.esm.js} +1 -1
  104. package/dist/{clientRequest-423fd562.cjs.dev.js → clientRequest-dae0c34e.cjs.dev.js} +1 -1
  105. package/dist/declarations/src/Http/App.d.ts +28 -1
  106. package/dist/declarations/src/Http/App.d.ts.map +1 -1
  107. package/dist/declarations/src/Http/Middleware.d.ts +0 -5
  108. package/dist/declarations/src/Http/Middleware.d.ts.map +1 -1
  109. package/dist/declarations/src/index.d.ts.map +1 -1
  110. package/dist/effect-platform.cjs.dev.js +49 -68
  111. package/dist/effect-platform.cjs.prod.js +49 -68
  112. package/dist/effect-platform.esm.js +20 -58
  113. package/package.json +8 -5
  114. package/src/Http/App.ts +76 -3
  115. package/src/Http/Middleware.ts +0 -6
  116. package/src/index.ts +10 -10
  117. package/src/internal/http/middleware.ts +21 -19
  118. package/src/internal/http/router.ts +1 -1
  119. package/src/internal/http/serverResponse.ts +1 -1
  120. package/dist/App-0916639a.cjs.prod.js +0 -7
  121. package/dist/App-44aa3275.cjs.dev.js +0 -7
  122. package/dist/App-687366d8.esm.js +0 -5
  123. package/dist/Command-032c414c.cjs.dev.js +0 -446
  124. package/dist/Command-25ef5e94.cjs.prod.js +0 -446
  125. package/dist/Command-d8ab0c8d.esm.js +0 -403
  126. package/dist/CommandExecutor-158ea1d3.cjs.dev.js +0 -87
  127. package/dist/CommandExecutor-5807b66b.esm.js +0 -80
  128. package/dist/CommandExecutor-7fcae408.cjs.prod.js +0 -87
  129. package/dist/Effectify-2d8c3af9.cjs.dev.js +0 -66
  130. package/dist/Effectify-38757ba5.cjs.prod.js +0 -66
  131. package/dist/Effectify-e5a9d266.esm.js +0 -43
  132. package/dist/Error-09496a70.cjs.dev.js +0 -100
  133. package/dist/Error-2c4e6ce2.cjs.prod.js +0 -100
  134. package/dist/Error-3099667c.esm.js +0 -75
  135. package/dist/FileSystem-3d439a05.cjs.prod.js +0 -308
  136. package/dist/FileSystem-4c7daaf0.cjs.dev.js +0 -308
  137. package/dist/FileSystem-7e31dccd.esm.js +0 -271
  138. package/dist/HttpClient-44d9df26.cjs.prod.js +0 -26
  139. package/dist/HttpClient-5179b5b7.esm.js +0 -24
  140. package/dist/HttpClient-6782fcab.cjs.dev.js +0 -26
  141. package/dist/HttpServer-16159c3a.cjs.dev.js +0 -32
  142. package/dist/HttpServer-50f8df76.esm.js +0 -30
  143. package/dist/HttpServer-93c0fbb3.cjs.prod.js +0 -32
  144. package/dist/KeyValueStore-2f9a70bf.esm.js +0 -210
  145. package/dist/KeyValueStore-f6c5b981.cjs.prod.js +0 -244
  146. package/dist/KeyValueStore-f9c93610.cjs.dev.js +0 -244
  147. package/dist/Path-3574641f.cjs.prod.js +0 -154
  148. package/dist/Path-46f84ba7.esm.js +0 -128
  149. package/dist/Path-7ba7e370.cjs.dev.js +0 -154
  150. package/dist/Runtime-1edd577a.cjs.dev.js +0 -55
  151. package/dist/Runtime-515efccf.cjs.prod.js +0 -55
  152. package/dist/Runtime-7265fb98.esm.js +0 -31
  153. /package/dist/{clientResponse-47df36b8.esm.js → clientResponse-0ace0007.esm.js} +0 -0
  154. /package/dist/{clientResponse-2e4c45a9.cjs.dev.js → clientResponse-43bb73b9.cjs.dev.js} +0 -0
  155. /package/dist/{clientResponse-4d53f425.cjs.prod.js → clientResponse-82dae5d8.cjs.prod.js} +0 -0
@@ -2,10 +2,50 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('effect/Cause');
6
- require('effect/Exit');
7
- var Runtime_dist_effectPlatformRuntime = require('../../dist/Runtime-1edd577a.cjs.dev.js');
5
+ var Cause = require('effect/Cause');
6
+ var Exit = require('effect/Exit');
8
7
 
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n["default"] = e;
23
+ return Object.freeze(n);
24
+ }
9
25
 
26
+ var Cause__namespace = /*#__PURE__*/_interopNamespace(Cause);
27
+ var Exit__namespace = /*#__PURE__*/_interopNamespace(Exit);
10
28
 
11
- exports.defaultTeardown = Runtime_dist_effectPlatformRuntime.defaultTeardown;
29
+ /**
30
+ * @since 1.0.0
31
+ */
32
+
33
+ /**
34
+ * @category model
35
+ * @since 1.0.0
36
+ */
37
+
38
+ /**
39
+ * @category teardown
40
+ * @since 1.0.0
41
+ */
42
+ const defaultTeardown = (exit, onExit) => {
43
+ onExit(Exit__namespace.isFailure(exit) && !Cause__namespace.isInterruptedOnly(exit.cause) ? 1 : 0);
44
+ };
45
+
46
+ /**
47
+ * @category model
48
+ * @since 1.0.0
49
+ */
50
+
51
+ exports.defaultTeardown = defaultTeardown;
@@ -2,10 +2,50 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('effect/Cause');
6
- require('effect/Exit');
7
- var Runtime_dist_effectPlatformRuntime = require('../../dist/Runtime-515efccf.cjs.prod.js');
5
+ var Cause = require('effect/Cause');
6
+ var Exit = require('effect/Exit');
8
7
 
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n["default"] = e;
23
+ return Object.freeze(n);
24
+ }
9
25
 
26
+ var Cause__namespace = /*#__PURE__*/_interopNamespace(Cause);
27
+ var Exit__namespace = /*#__PURE__*/_interopNamespace(Exit);
10
28
 
11
- exports.defaultTeardown = Runtime_dist_effectPlatformRuntime.defaultTeardown;
29
+ /**
30
+ * @since 1.0.0
31
+ */
32
+
33
+ /**
34
+ * @category model
35
+ * @since 1.0.0
36
+ */
37
+
38
+ /**
39
+ * @category teardown
40
+ * @since 1.0.0
41
+ */
42
+ const defaultTeardown = (exit, onExit) => {
43
+ onExit(Exit__namespace.isFailure(exit) && !Cause__namespace.isInterruptedOnly(exit.cause) ? 1 : 0);
44
+ };
45
+
46
+ /**
47
+ * @category model
48
+ * @since 1.0.0
49
+ */
50
+
51
+ exports.defaultTeardown = defaultTeardown;
@@ -1,3 +1,26 @@
1
- import 'effect/Cause';
2
- import 'effect/Exit';
3
- export { d as defaultTeardown } from '../../dist/Runtime-7265fb98.esm.js';
1
+ import * as Cause from 'effect/Cause';
2
+ import * as Exit from 'effect/Exit';
3
+
4
+ /**
5
+ * @since 1.0.0
6
+ */
7
+
8
+ /**
9
+ * @category model
10
+ * @since 1.0.0
11
+ */
12
+
13
+ /**
14
+ * @category teardown
15
+ * @since 1.0.0
16
+ */
17
+ const defaultTeardown = (exit, onExit) => {
18
+ onExit(Exit.isFailure(exit) && !Cause.isInterruptedOnly(exit.cause) ? 1 : 0);
19
+ };
20
+
21
+ /**
22
+ * @category model
23
+ * @since 1.0.0
24
+ */
25
+
26
+ export { defaultTeardown };
@@ -0,0 +1,93 @@
1
+ 'use strict';
2
+
3
+ var Effect = require('effect/Effect');
4
+ var FiberRef = require('effect/FiberRef');
5
+ var Function = require('effect/Function');
6
+ var Global = require('effect/GlobalValue');
7
+ var ReadonlyArray = require('effect/ReadonlyArray');
8
+
9
+ function _interopNamespace(e) {
10
+ if (e && e.__esModule) return e;
11
+ var n = Object.create(null);
12
+ if (e) {
13
+ Object.keys(e).forEach(function (k) {
14
+ if (k !== 'default') {
15
+ var d = Object.getOwnPropertyDescriptor(e, k);
16
+ Object.defineProperty(n, k, d.get ? d : {
17
+ enumerable: true,
18
+ get: function () { return e[k]; }
19
+ });
20
+ }
21
+ });
22
+ }
23
+ n["default"] = e;
24
+ return Object.freeze(n);
25
+ }
26
+
27
+ var Effect__namespace = /*#__PURE__*/_interopNamespace(Effect);
28
+ var FiberRef__namespace = /*#__PURE__*/_interopNamespace(FiberRef);
29
+ var ReadonlyArray__namespace = /*#__PURE__*/_interopNamespace(ReadonlyArray);
30
+
31
+ /**
32
+ * @since 1.0.0
33
+ */
34
+
35
+ /**
36
+ * @since 1.0.0
37
+ * @category models
38
+ */
39
+
40
+ /**
41
+ * @since 1.0.0
42
+ * @category models
43
+ */
44
+
45
+ /**
46
+ * @since 1.0.0
47
+ * @category models
48
+ */
49
+
50
+ /**
51
+ * @since 1.0.0
52
+ * @category fiber refs
53
+ */
54
+ const currentPreResponseHandlers = /*#__PURE__*/Global.globalValue( /*#__PURE__*/Symbol.for("@effect/platform/Http/App/preResponseHandlers"), () => FiberRef__namespace.unsafeMake([]));
55
+ function noopHandler(_request, response) {
56
+ return Effect__namespace.succeed(response);
57
+ }
58
+
59
+ /**
60
+ * @since 1.0.0
61
+ * @category fiber refs
62
+ */
63
+ const preResponseHandler = /*#__PURE__*/Effect__namespace.map( /*#__PURE__*/FiberRef__namespace.get(currentPreResponseHandlers), handlers => handlers.length === 0 ? noopHandler : handlers.reduce((acc, handler) => function (request, response) {
64
+ return Effect__namespace.flatMap(acc(request, response), function (response) {
65
+ return handler(request, response);
66
+ });
67
+ }));
68
+
69
+ /**
70
+ * @since 1.0.0
71
+ * @category fiber refs
72
+ */
73
+ const appendPreResponseHandler = handler => FiberRef__namespace.update(currentPreResponseHandlers, ReadonlyArray__namespace.append(handler));
74
+
75
+ /**
76
+ * @since 1.0.0
77
+ * @category fiber refs
78
+ */
79
+ const withPreResponseHandler = /*#__PURE__*/Function.dual(2, (self, handler) => Effect__namespace.locallyWith(self, currentPreResponseHandlers, ReadonlyArray__namespace.append(handler)));
80
+
81
+ var App = /*#__PURE__*/Object.freeze({
82
+ __proto__: null,
83
+ currentPreResponseHandlers: currentPreResponseHandlers,
84
+ preResponseHandler: preResponseHandler,
85
+ appendPreResponseHandler: appendPreResponseHandler,
86
+ withPreResponseHandler: withPreResponseHandler
87
+ });
88
+
89
+ exports.App = App;
90
+ exports.appendPreResponseHandler = appendPreResponseHandler;
91
+ exports.currentPreResponseHandlers = currentPreResponseHandlers;
92
+ exports.preResponseHandler = preResponseHandler;
93
+ exports.withPreResponseHandler = withPreResponseHandler;
@@ -0,0 +1,65 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import * as FiberRef from 'effect/FiberRef';
3
+ import { dual } from 'effect/Function';
4
+ import { globalValue } from 'effect/GlobalValue';
5
+ import * as ReadonlyArray from 'effect/ReadonlyArray';
6
+
7
+ /**
8
+ * @since 1.0.0
9
+ */
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ * @category models
14
+ */
15
+
16
+ /**
17
+ * @since 1.0.0
18
+ * @category models
19
+ */
20
+
21
+ /**
22
+ * @since 1.0.0
23
+ * @category models
24
+ */
25
+
26
+ /**
27
+ * @since 1.0.0
28
+ * @category fiber refs
29
+ */
30
+ const currentPreResponseHandlers = /*#__PURE__*/globalValue( /*#__PURE__*/Symbol.for("@effect/platform/Http/App/preResponseHandlers"), () => FiberRef.unsafeMake([]));
31
+ function noopHandler(_request, response) {
32
+ return Effect.succeed(response);
33
+ }
34
+
35
+ /**
36
+ * @since 1.0.0
37
+ * @category fiber refs
38
+ */
39
+ const preResponseHandler = /*#__PURE__*/Effect.map( /*#__PURE__*/FiberRef.get(currentPreResponseHandlers), handlers => handlers.length === 0 ? noopHandler : handlers.reduce((acc, handler) => function (request, response) {
40
+ return Effect.flatMap(acc(request, response), function (response) {
41
+ return handler(request, response);
42
+ });
43
+ }));
44
+
45
+ /**
46
+ * @since 1.0.0
47
+ * @category fiber refs
48
+ */
49
+ const appendPreResponseHandler = handler => FiberRef.update(currentPreResponseHandlers, ReadonlyArray.append(handler));
50
+
51
+ /**
52
+ * @since 1.0.0
53
+ * @category fiber refs
54
+ */
55
+ const withPreResponseHandler = /*#__PURE__*/dual(2, (self, handler) => Effect.locallyWith(self, currentPreResponseHandlers, ReadonlyArray.append(handler)));
56
+
57
+ var App = /*#__PURE__*/Object.freeze({
58
+ __proto__: null,
59
+ currentPreResponseHandlers: currentPreResponseHandlers,
60
+ preResponseHandler: preResponseHandler,
61
+ appendPreResponseHandler: appendPreResponseHandler,
62
+ withPreResponseHandler: withPreResponseHandler
63
+ });
64
+
65
+ export { App as A, appendPreResponseHandler as a, currentPreResponseHandlers as c, preResponseHandler as p, withPreResponseHandler as w };
@@ -0,0 +1,93 @@
1
+ 'use strict';
2
+
3
+ var Effect = require('effect/Effect');
4
+ var FiberRef = require('effect/FiberRef');
5
+ var Function = require('effect/Function');
6
+ var Global = require('effect/GlobalValue');
7
+ var ReadonlyArray = require('effect/ReadonlyArray');
8
+
9
+ function _interopNamespace(e) {
10
+ if (e && e.__esModule) return e;
11
+ var n = Object.create(null);
12
+ if (e) {
13
+ Object.keys(e).forEach(function (k) {
14
+ if (k !== 'default') {
15
+ var d = Object.getOwnPropertyDescriptor(e, k);
16
+ Object.defineProperty(n, k, d.get ? d : {
17
+ enumerable: true,
18
+ get: function () { return e[k]; }
19
+ });
20
+ }
21
+ });
22
+ }
23
+ n["default"] = e;
24
+ return Object.freeze(n);
25
+ }
26
+
27
+ var Effect__namespace = /*#__PURE__*/_interopNamespace(Effect);
28
+ var FiberRef__namespace = /*#__PURE__*/_interopNamespace(FiberRef);
29
+ var ReadonlyArray__namespace = /*#__PURE__*/_interopNamespace(ReadonlyArray);
30
+
31
+ /**
32
+ * @since 1.0.0
33
+ */
34
+
35
+ /**
36
+ * @since 1.0.0
37
+ * @category models
38
+ */
39
+
40
+ /**
41
+ * @since 1.0.0
42
+ * @category models
43
+ */
44
+
45
+ /**
46
+ * @since 1.0.0
47
+ * @category models
48
+ */
49
+
50
+ /**
51
+ * @since 1.0.0
52
+ * @category fiber refs
53
+ */
54
+ const currentPreResponseHandlers = /*#__PURE__*/Global.globalValue( /*#__PURE__*/Symbol.for("@effect/platform/Http/App/preResponseHandlers"), () => FiberRef__namespace.unsafeMake([]));
55
+ function noopHandler(_request, response) {
56
+ return Effect__namespace.succeed(response);
57
+ }
58
+
59
+ /**
60
+ * @since 1.0.0
61
+ * @category fiber refs
62
+ */
63
+ const preResponseHandler = /*#__PURE__*/Effect__namespace.map( /*#__PURE__*/FiberRef__namespace.get(currentPreResponseHandlers), handlers => handlers.length === 0 ? noopHandler : handlers.reduce((acc, handler) => function (request, response) {
64
+ return Effect__namespace.flatMap(acc(request, response), function (response) {
65
+ return handler(request, response);
66
+ });
67
+ }));
68
+
69
+ /**
70
+ * @since 1.0.0
71
+ * @category fiber refs
72
+ */
73
+ const appendPreResponseHandler = handler => FiberRef__namespace.update(currentPreResponseHandlers, ReadonlyArray__namespace.append(handler));
74
+
75
+ /**
76
+ * @since 1.0.0
77
+ * @category fiber refs
78
+ */
79
+ const withPreResponseHandler = /*#__PURE__*/Function.dual(2, (self, handler) => Effect__namespace.locallyWith(self, currentPreResponseHandlers, ReadonlyArray__namespace.append(handler)));
80
+
81
+ var App = /*#__PURE__*/Object.freeze({
82
+ __proto__: null,
83
+ currentPreResponseHandlers: currentPreResponseHandlers,
84
+ preResponseHandler: preResponseHandler,
85
+ appendPreResponseHandler: appendPreResponseHandler,
86
+ withPreResponseHandler: withPreResponseHandler
87
+ });
88
+
89
+ exports.App = App;
90
+ exports.appendPreResponseHandler = appendPreResponseHandler;
91
+ exports.currentPreResponseHandlers = currentPreResponseHandlers;
92
+ exports.preResponseHandler = preResponseHandler;
93
+ exports.withPreResponseHandler = withPreResponseHandler;
@@ -1,4 +1,4 @@
1
- import { T as TypeId$1, E as ErrorTypeId$1, B as BodyError$1, e as empty$1, r as raw$1, u as uint8Array$1, t as text$1, a as unsafeJson$1, j as json$1, b as jsonSchema$1, f as formData$1, s as stream$1, c as file$1, d as fileInfo$1, g as fileWeb$1 } from './body-20d78ec1.esm.js';
1
+ import { T as TypeId$1, E as ErrorTypeId$1, B as BodyError$1, e as empty$1, r as raw$1, u as uint8Array$1, t as text$1, a as unsafeJson$1, j as json$1, b as jsonSchema$1, f as formData$1, s as stream$1, c as file$1, d as fileInfo$1, g as fileWeb$1 } from './body-db8cfb3d.esm.js';
2
2
 
3
3
  /**
4
4
  * @since 1.0.0
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var body = require('./body-c7d7a944.cjs.dev.js');
3
+ var body = require('./body-cea7c1c9.cjs.dev.js');
4
4
 
5
5
  /**
6
6
  * @since 1.0.0
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var body = require('./body-33521da5.cjs.prod.js');
3
+ var body = require('./body-95276637.cjs.prod.js');
4
4
 
5
5
  /**
6
6
  * @since 1.0.0
@@ -11,10 +11,10 @@ var Stream = require('effect/Stream');
11
11
  var Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage = require('../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.prod.js');
12
12
  var Http_Method_dist_effectPlatformHttpMethod = require('../Http/Method/dist/effect-platform-Http-Method.cjs.prod.js');
13
13
  var Http_UrlParams_dist_effectPlatformHttpUrlParams = require('./UrlParams-1228a686.cjs.prod.js');
14
- var body = require('./body-33521da5.cjs.prod.js');
14
+ var body = require('./body-95276637.cjs.prod.js');
15
15
  var clientError = require('./clientError-de103d6a.cjs.prod.js');
16
- var clientRequest = require('./clientRequest-3e72ec54.cjs.prod.js');
17
- var clientResponse = require('./clientResponse-4d53f425.cjs.prod.js');
16
+ var clientRequest = require('./clientRequest-539df396.cjs.prod.js');
17
+ var clientResponse = require('./clientResponse-82dae5d8.cjs.prod.js');
18
18
 
19
19
  function _interopNamespace(e) {
20
20
  if (e && e.__esModule) return e;
@@ -9,10 +9,10 @@ import * as Stream from 'effect/Stream';
9
9
  import { schemaExternalSpan } from '../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.esm.js';
10
10
  import { hasBody } from '../Http/Method/dist/effect-platform-Http-Method.esm.js';
11
11
  import { m as makeUrl } from './UrlParams-1286c728.esm.js';
12
- import { u as uint8Array } from './body-20d78ec1.esm.js';
12
+ import { u as uint8Array } from './body-db8cfb3d.esm.js';
13
13
  import { r as requestError, a as responseError } from './clientError-c4e1466c.esm.js';
14
- import { s as setHeader, a as setBody } from './clientRequest-1e9e0b0d.esm.js';
15
- import { f as fromWeb } from './clientResponse-47df36b8.esm.js';
14
+ import { s as setHeader, a as setBody } from './clientRequest-6121a7f6.esm.js';
15
+ import { f as fromWeb } from './clientResponse-0ace0007.esm.js';
16
16
 
17
17
  /** @internal */
18
18
  const TypeId$1 = /*#__PURE__*/Symbol.for("@effect/platform/Http/Client");
@@ -11,10 +11,10 @@ var Stream = require('effect/Stream');
11
11
  var Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage = require('../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.dev.js');
12
12
  var Http_Method_dist_effectPlatformHttpMethod = require('../Http/Method/dist/effect-platform-Http-Method.cjs.dev.js');
13
13
  var Http_UrlParams_dist_effectPlatformHttpUrlParams = require('./UrlParams-5e0910f1.cjs.dev.js');
14
- var body = require('./body-c7d7a944.cjs.dev.js');
14
+ var body = require('./body-cea7c1c9.cjs.dev.js');
15
15
  var clientError = require('./clientError-52d24cd8.cjs.dev.js');
16
- var clientRequest = require('./clientRequest-423fd562.cjs.dev.js');
17
- var clientResponse = require('./clientResponse-2e4c45a9.cjs.dev.js');
16
+ var clientRequest = require('./clientRequest-dae0c34e.cjs.dev.js');
17
+ var clientResponse = require('./clientResponse-43bb73b9.cjs.dev.js');
18
18
 
19
19
  function _interopNamespace(e) {
20
20
  if (e && e.__esModule) return e;
@@ -1,4 +1,4 @@
1
- import { m as make$1, g as get$1, p as post$1, b as patch$1, c as put$1, d as del$1, h as head$1, o as options$1, e as modify$1, f as setMethod$1, s as setHeader$1, i as setHeaders$1, j as basicAuth$1, k as bearerToken$1, l as accept$1, n as acceptJson$1, q as setUrl$1, r as prependUrl$1, t as appendUrl$1, u as updateUrl$1, v as setUrlParam$1, w as setUrlParams$1, x as appendUrlParam$1, y as appendUrlParams$1, a as setBody$1, z as uint8ArrayBody$1, A as textBody$1, B as jsonBody$1, C as unsafeJsonBody$1, D as schemaBody$1, E as urlParamsBody$1, F as formDataBody$1, G as streamBody$1, H as fileBody$1, I as fileWebBody$1 } from './clientRequest-1e9e0b0d.esm.js';
1
+ import { m as make$1, g as get$1, p as post$1, b as patch$1, c as put$1, d as del$1, h as head$1, o as options$1, e as modify$1, f as setMethod$1, s as setHeader$1, i as setHeaders$1, j as basicAuth$1, k as bearerToken$1, l as accept$1, n as acceptJson$1, q as setUrl$1, r as prependUrl$1, t as appendUrl$1, u as updateUrl$1, v as setUrlParam$1, w as setUrlParams$1, x as appendUrlParam$1, y as appendUrlParams$1, a as setBody$1, z as uint8ArrayBody$1, A as textBody$1, B as jsonBody$1, C as unsafeJsonBody$1, D as schemaBody$1, E as urlParamsBody$1, F as formDataBody$1, G as streamBody$1, H as fileBody$1, I as fileWebBody$1 } from './clientRequest-6121a7f6.esm.js';
2
2
 
3
3
  /**
4
4
  * @since 1.0.0
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var clientRequest = require('./clientRequest-3e72ec54.cjs.prod.js');
3
+ var clientRequest = require('./clientRequest-539df396.cjs.prod.js');
4
4
 
5
5
  /**
6
6
  * @since 1.0.0
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var clientRequest = require('./clientRequest-423fd562.cjs.dev.js');
3
+ var clientRequest = require('./clientRequest-dae0c34e.cjs.dev.js');
4
4
 
5
5
  /**
6
6
  * @since 1.0.0
@@ -1,4 +1,4 @@
1
- import { T as TypeId$1, f as fromWeb$1, s as schemaJson$1, a as schemaNoBody$1 } from './clientResponse-47df36b8.esm.js';
1
+ import { T as TypeId$1, f as fromWeb$1, s as schemaJson$1, a as schemaNoBody$1 } from './clientResponse-0ace0007.esm.js';
2
2
  import { schemaBodyJson, schemaBodyUrlParams, schemaHeaders } from '../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.esm.js';
3
3
 
4
4
  /**
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var clientResponse = require('./clientResponse-4d53f425.cjs.prod.js');
3
+ var clientResponse = require('./clientResponse-82dae5d8.cjs.prod.js');
4
4
  var Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage = require('../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.prod.js');
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var clientResponse = require('./clientResponse-2e4c45a9.cjs.dev.js');
3
+ var clientResponse = require('./clientResponse-43bb73b9.cjs.dev.js');
4
4
  var Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage = require('../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.dev.js');
5
5
 
6
6
  /**
@@ -10,7 +10,7 @@ var Global = require('effect/GlobalValue');
10
10
  var Option = require('effect/Option');
11
11
  var Predicate = require('effect/Predicate');
12
12
  var ReadonlyArray = require('effect/ReadonlyArray');
13
- var FileSystem_dist_effectPlatformFileSystem = require('./FileSystem-4c7daaf0.cjs.dev.js');
13
+ var FileSystem_dist_effectPlatformFileSystem = require('../FileSystem/dist/effect-platform-FileSystem.cjs.prod.js');
14
14
 
15
15
  function _interopNamespace(e) {
16
16
  if (e && e.__esModule) return e;
@@ -10,7 +10,7 @@ var Global = require('effect/GlobalValue');
10
10
  var Option = require('effect/Option');
11
11
  var Predicate = require('effect/Predicate');
12
12
  var ReadonlyArray = require('effect/ReadonlyArray');
13
- var FileSystem_dist_effectPlatformFileSystem = require('./FileSystem-3d439a05.cjs.prod.js');
13
+ var FileSystem_dist_effectPlatformFileSystem = require('../FileSystem/dist/effect-platform-FileSystem.cjs.dev.js');
14
14
 
15
15
  function _interopNamespace(e) {
16
16
  if (e && e.__esModule) return e;
@@ -8,7 +8,7 @@ import { globalValue } from 'effect/GlobalValue';
8
8
  import * as Option from 'effect/Option';
9
9
  import * as Predicate from 'effect/Predicate';
10
10
  import * as ReadonlyArray from 'effect/ReadonlyArray';
11
- import { S as Size } from './FileSystem-7e31dccd.esm.js';
11
+ import { Size } from '../FileSystem/dist/effect-platform-FileSystem.esm.js';
12
12
 
13
13
  /** @internal */
14
14
  const TypeId$1 = /*#__PURE__*/Symbol.for("@effect/platform/Http/FormData");
@@ -2,10 +2,11 @@
2
2
 
3
3
  var Effect = require('effect/Effect');
4
4
  var Function = require('effect/Function');
5
+ var Http_App_dist_effectPlatformHttpApp = require('./App-d8b904fa.cjs.prod.js');
5
6
  var Http_Headers_dist_effectPlatformHttpHeaders = require('./Headers-122cb877.cjs.prod.js');
6
7
  var Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage = require('../Http/IncomingMessage/dist/effect-platform-Http-IncomingMessage.cjs.prod.js');
7
- var Http_ServerRequest_dist_effectPlatformHttpServerRequest = require('./ServerRequest-938f3ed0.cjs.prod.js');
8
- var Http_ServerResponse_dist_effectPlatformHttpServerResponse = require('./ServerResponse-eae85b08.cjs.prod.js');
8
+ var Http_ServerRequest_dist_effectPlatformHttpServerRequest = require('./ServerRequest-ec4da01b.cjs.prod.js');
9
+ var Http_ServerResponse_dist_effectPlatformHttpServerResponse = require('./ServerResponse-db87bde2.cjs.prod.js');
9
10
 
10
11
  function _interopNamespace(e) {
11
12
  if (e && e.__esModule) return e;
@@ -45,16 +46,17 @@ const logger$1 = /*#__PURE__*/make$1(httpApp => {
45
46
  });
46
47
 
47
48
  /** @internal */
48
- const tracer$1 = /*#__PURE__*/make$1(httpApp => Effect__namespace.flatMap(Http_ServerRequest_dist_effectPlatformHttpServerRequest.ServerRequest$1, request => Effect__namespace.flatMap(Effect__namespace.orElseSucceed(Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage.schemaExternalSpan(request), () => undefined), parent => Effect__namespace.withSpan(Effect__namespace.tap(httpApp, response => Effect__namespace.annotateCurrentSpan("http.status", response.status)), `http ${request.method}`, {
49
- attributes: {
50
- "http.method": request.method,
51
- "http.url": request.url
52
- },
53
- parent
54
- }))));
55
-
56
- /** @internal */
57
- const b3Response$1 = /*#__PURE__*/make$1(httpApp => Effect__namespace.flatMap(Effect__namespace.currentSpan, span => span._tag === "Some" ? Effect__namespace.map(httpApp, res => Http_ServerResponse_dist_effectPlatformHttpServerResponse.setHeader(res, "b3", `${span.value.traceId}-${span.value.spanId}-1${span.value.parent._tag === "Some" ? `-${span.value.parent.value.spanId}` : ""}`)) : httpApp));
49
+ const tracer$1 = /*#__PURE__*/make$1(httpApp => {
50
+ const appWithStatus = Effect__namespace.tap(Effect__namespace.zipRight(Http_App_dist_effectPlatformHttpApp.appendPreResponseHandler(b3Response), httpApp), response => Effect__namespace.annotateCurrentSpan("http.status", response.status));
51
+ return Effect__namespace.flatMap(Http_ServerRequest_dist_effectPlatformHttpServerRequest.ServerRequest$1, request => Effect__namespace.flatMap(Effect__namespace.orElseSucceed(Http_IncomingMessage_dist_effectPlatformHttpIncomingMessage.schemaExternalSpan(request), () => undefined), parent => Effect__namespace.withSpan(appWithStatus, `http ${request.method}`, {
52
+ attributes: {
53
+ "http.method": request.method,
54
+ "http.url": request.url
55
+ },
56
+ parent
57
+ })));
58
+ });
59
+ const b3Response = (_request, response) => Effect__namespace.flatMap(Effect__namespace.currentSpan, span => span._tag === "Some" ? Http_ServerResponse_dist_effectPlatformHttpServerResponse.setHeader(response, "b3", `${span.value.traceId}-${span.value.spanId}-1${span.value.parent._tag === "Some" ? `-${span.value.parent.value.spanId}` : ""}`) : response);
58
60
 
59
61
  /** @internal */
60
62
  const xForwardedHeaders$1 = /*#__PURE__*/make$1(httpApp => Effect__namespace.updateService(httpApp, Http_ServerRequest_dist_effectPlatformHttpServerRequest.ServerRequest$1, request => request.headers["x-forwarded-host"] ? request.modify({
@@ -84,12 +86,6 @@ const loggerTracer$1 = /*#__PURE__*/Function.flow(tracer$1, logger$1);
84
86
  */
85
87
  const make = make$1;
86
88
 
87
- /**
88
- * @since 1.0.0
89
- * @category constructors
90
- */
91
- const b3Response = b3Response$1;
92
-
93
89
  /**
94
90
  * @since 1.0.0
95
91
  * @category constructors
@@ -117,7 +113,6 @@ const xForwardedHeaders = xForwardedHeaders$1;
117
113
  var Middleware = /*#__PURE__*/Object.freeze({
118
114
  __proto__: null,
119
115
  make: make,
120
- b3Response: b3Response,
121
116
  logger: logger,
122
117
  tracer: tracer,
123
118
  loggerTracer: loggerTracer,
@@ -125,7 +120,6 @@ var Middleware = /*#__PURE__*/Object.freeze({
125
120
  });
126
121
 
127
122
  exports.Middleware = Middleware;
128
- exports.b3Response = b3Response;
129
123
  exports.logger = logger;
130
124
  exports.loggerTracer = loggerTracer;
131
125
  exports.make = make;