@effect/platform 0.69.1 → 0.69.3
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.
- package/dist/cjs/HttpApp.js +47 -36
- package/dist/cjs/HttpApp.js.map +1 -1
- package/dist/cjs/OpenApi.js +49 -41
- package/dist/cjs/OpenApi.js.map +1 -1
- package/dist/cjs/internal/httpMiddleware.js +3 -6
- package/dist/cjs/internal/httpMiddleware.js.map +1 -1
- package/dist/dts/HttpApp.d.ts +1 -1
- package/dist/dts/HttpApp.d.ts.map +1 -1
- package/dist/dts/OpenApi.d.ts +11 -10
- package/dist/dts/OpenApi.d.ts.map +1 -1
- package/dist/esm/HttpApp.js +47 -36
- package/dist/esm/HttpApp.js.map +1 -1
- package/dist/esm/OpenApi.js +47 -39
- package/dist/esm/OpenApi.js.map +1 -1
- package/dist/esm/internal/httpMiddleware.js +3 -6
- package/dist/esm/internal/httpMiddleware.js.map +1 -1
- package/package.json +1 -1
- package/src/HttpApp.ts +67 -43
- package/src/OpenApi.ts +62 -55
- package/src/internal/httpMiddleware.ts +3 -6
package/dist/esm/HttpApp.js
CHANGED
|
@@ -4,57 +4,68 @@
|
|
|
4
4
|
import * as Context from "effect/Context";
|
|
5
5
|
import * as Effect from "effect/Effect";
|
|
6
6
|
import * as Exit from "effect/Exit";
|
|
7
|
-
import * as FiberRef from "effect/FiberRef";
|
|
8
7
|
import * as Layer from "effect/Layer";
|
|
9
8
|
import * as Runtime from "effect/Runtime";
|
|
10
9
|
import * as Scope from "effect/Scope";
|
|
10
|
+
import { unify } from "effect/Unify";
|
|
11
11
|
import * as ServerError from "./HttpServerError.js";
|
|
12
12
|
import * as ServerRequest from "./HttpServerRequest.js";
|
|
13
13
|
import * as ServerResponse from "./HttpServerResponse.js";
|
|
14
14
|
import * as internal from "./internal/httpApp.js";
|
|
15
15
|
import * as internalMiddleware from "./internal/httpMiddleware.js";
|
|
16
|
+
const handledSymbol = /*#__PURE__*/Symbol.for("@effect/platform/HttpApp/handled");
|
|
16
17
|
/**
|
|
17
18
|
* @since 1.0.0
|
|
18
19
|
* @category combinators
|
|
19
20
|
*/
|
|
20
21
|
export const toHandled = (self, handleResponse, middleware) => {
|
|
21
|
-
const responded = Effect.withFiberRuntime(fiber => {
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const responded = Effect.matchCauseEffect(self, {
|
|
29
|
-
onFailure: cause => Effect.flatMap(ServerError.causeResponse(cause), ([response, cause]) => preprocessResponse(response).pipe(Effect.flatMap(response => {
|
|
30
|
-
handled = true;
|
|
31
|
-
return handleResponse(request, response);
|
|
32
|
-
}), Effect.zipRight(Effect.failCause(cause)))),
|
|
33
|
-
onSuccess: response => Effect.tap(preprocessResponse(response), response => {
|
|
34
|
-
handled = true;
|
|
35
|
-
return handleResponse(request, response);
|
|
36
|
-
})
|
|
37
|
-
});
|
|
38
|
-
const withTracer = internalMiddleware.tracer(responded);
|
|
39
|
-
if (middleware === undefined) {
|
|
40
|
-
return withTracer;
|
|
22
|
+
const responded = Effect.withFiberRuntime(fiber => Effect.flatMap(self, response => {
|
|
23
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
24
|
+
const handler = fiber.getFiberRef(currentPreResponseHandlers);
|
|
25
|
+
if (handler._tag === "None") {
|
|
26
|
+
;
|
|
27
|
+
request[handledSymbol] = true;
|
|
28
|
+
return Effect.as(handleResponse(request, response), response);
|
|
41
29
|
}
|
|
42
|
-
return Effect.
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
return Effect.matchCauseEffect(ServerError.causeResponse(cause), {
|
|
48
|
-
onFailure: _cause => handleResponse(request, ServerResponse.empty({
|
|
49
|
-
status: 500
|
|
50
|
-
})),
|
|
51
|
-
onSuccess: ([response]) => handleResponse(request, response)
|
|
52
|
-
});
|
|
53
|
-
},
|
|
54
|
-
onSuccess: response => handled ? Effect.void : handleResponse(request, response)
|
|
30
|
+
return Effect.tap(handler.value(request, response), response => {
|
|
31
|
+
;
|
|
32
|
+
request[handledSymbol] = true;
|
|
33
|
+
return handleResponse(request, response);
|
|
55
34
|
});
|
|
56
|
-
});
|
|
57
|
-
|
|
35
|
+
}));
|
|
36
|
+
const withErrorHandling = Effect.catchAllCause(responded, cause => Effect.withFiberRuntime(fiber => Effect.flatMap(ServerError.causeResponse(cause), ([response, cause]) => {
|
|
37
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
38
|
+
const handler = fiber.getFiberRef(currentPreResponseHandlers);
|
|
39
|
+
if (handler._tag === "None") {
|
|
40
|
+
;
|
|
41
|
+
request[handledSymbol] = true;
|
|
42
|
+
return Effect.zipRight(handleResponse(request, response), Effect.failCause(cause));
|
|
43
|
+
}
|
|
44
|
+
return Effect.zipRight(Effect.tap(handler.value(request, response), response => {
|
|
45
|
+
;
|
|
46
|
+
request[handledSymbol] = true;
|
|
47
|
+
return handleResponse(request, response);
|
|
48
|
+
}), Effect.failCause(cause));
|
|
49
|
+
})));
|
|
50
|
+
const withMiddleware = unify(middleware === undefined ? internalMiddleware.tracer(withErrorHandling) : Effect.matchCauseEffect(middleware(internalMiddleware.tracer(withErrorHandling)), {
|
|
51
|
+
onFailure: cause => Effect.withFiberRuntime(fiber => {
|
|
52
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
53
|
+
if (handledSymbol in request) {
|
|
54
|
+
return Effect.void;
|
|
55
|
+
}
|
|
56
|
+
return Effect.matchCauseEffect(ServerError.causeResponse(cause), {
|
|
57
|
+
onFailure: _cause => handleResponse(request, ServerResponse.empty({
|
|
58
|
+
status: 500
|
|
59
|
+
})),
|
|
60
|
+
onSuccess: ([response]) => handleResponse(request, response)
|
|
61
|
+
});
|
|
62
|
+
}),
|
|
63
|
+
onSuccess: response => Effect.withFiberRuntime(fiber => {
|
|
64
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
65
|
+
return handledSymbol in request ? Effect.void : handleResponse(request, response);
|
|
66
|
+
})
|
|
67
|
+
}));
|
|
68
|
+
return Effect.uninterruptible(Effect.scoped(withMiddleware));
|
|
58
69
|
};
|
|
59
70
|
/**
|
|
60
71
|
* @since 1.0.0
|
package/dist/esm/HttpApp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpApp.js","names":["Context","Effect","Exit","
|
|
1
|
+
{"version":3,"file":"HttpApp.js","names":["Context","Effect","Exit","Layer","Runtime","Scope","unify","ServerError","ServerRequest","ServerResponse","internal","internalMiddleware","handledSymbol","Symbol","for","toHandled","self","handleResponse","middleware","responded","withFiberRuntime","fiber","flatMap","response","request","unsafeGet","currentContext","HttpServerRequest","handler","getFiberRef","currentPreResponseHandlers","_tag","as","tap","value","withErrorHandling","catchAllCause","cause","causeResponse","zipRight","failCause","withMiddleware","undefined","tracer","matchCauseEffect","onFailure","void","_cause","empty","status","onSuccess","uninterruptible","scoped","appendPreResponseHandler","withPreResponseHandler","toWebHandlerRuntime","runtime","run","runFork","Promise","resolve","provideService","toWeb","withoutBody","method","fromWeb","signal","addEventListener","unsafeInterruptAsFork","clientAbortFiberId","once","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","scope","runSync","make","close","runPromise","build","map","toRuntime","_","runner","extend","then"],"sources":["../../src/HttpApp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/OpenApi.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
import * as Context from "effect/Context";
|
|
5
|
+
import { globalValue } from "effect/GlobalValue";
|
|
5
6
|
import * as HashSet from "effect/HashSet";
|
|
6
7
|
import * as Option from "effect/Option";
|
|
7
8
|
import * as Schema from "effect/Schema";
|
|
@@ -50,44 +51,48 @@ export class Servers extends /*#__PURE__*/Context.Tag("@effect/platform/OpenApi/
|
|
|
50
51
|
* @since 1.0.0
|
|
51
52
|
* @category annotations
|
|
52
53
|
*/
|
|
53
|
-
export class
|
|
54
|
+
export class Format extends /*#__PURE__*/Context.Tag("@effect/platform/OpenApi/Format")() {}
|
|
54
55
|
/**
|
|
55
56
|
* @since 1.0.0
|
|
56
57
|
* @category annotations
|
|
57
58
|
*/
|
|
58
|
-
export
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
context = Context.add(context, Version, annotations.version);
|
|
71
|
-
}
|
|
72
|
-
if (annotations.license !== undefined) {
|
|
73
|
-
context = Context.add(context, License, annotations.license);
|
|
74
|
-
}
|
|
75
|
-
if (annotations.externalDocs !== undefined) {
|
|
76
|
-
context = Context.add(context, ExternalDocs, annotations.externalDocs);
|
|
77
|
-
}
|
|
78
|
-
if (annotations.servers !== undefined) {
|
|
79
|
-
context = Context.add(context, Servers, annotations.servers);
|
|
80
|
-
}
|
|
81
|
-
if (annotations.override !== undefined) {
|
|
82
|
-
context = Context.add(context, Override, annotations.override);
|
|
83
|
-
}
|
|
84
|
-
return context;
|
|
59
|
+
export class Override extends /*#__PURE__*/Context.Tag("@effect/platform/OpenApi/Override")() {}
|
|
60
|
+
const contextPartial = tags => {
|
|
61
|
+
const entries = Object.entries(tags);
|
|
62
|
+
return options => {
|
|
63
|
+
let context = Context.empty();
|
|
64
|
+
for (const [key, tag] of entries) {
|
|
65
|
+
if (options[key] !== undefined) {
|
|
66
|
+
context = Context.add(context, tag, options[key]);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return context;
|
|
70
|
+
};
|
|
85
71
|
};
|
|
72
|
+
/**
|
|
73
|
+
* @since 1.0.0
|
|
74
|
+
* @category annotations
|
|
75
|
+
*/
|
|
76
|
+
export const annotations = /*#__PURE__*/contextPartial({
|
|
77
|
+
identifier: Identifier,
|
|
78
|
+
title: Title,
|
|
79
|
+
version: Version,
|
|
80
|
+
description: Description,
|
|
81
|
+
license: License,
|
|
82
|
+
externalDocs: ExternalDocs,
|
|
83
|
+
servers: Servers,
|
|
84
|
+
format: Format,
|
|
85
|
+
override: Override
|
|
86
|
+
});
|
|
87
|
+
const apiCache = /*#__PURE__*/globalValue("@effect/platform/OpenApi/apiCache", () => new WeakMap());
|
|
86
88
|
/**
|
|
87
89
|
* @category constructors
|
|
88
90
|
* @since 1.0.0
|
|
89
91
|
*/
|
|
90
92
|
export const fromApi = self => {
|
|
93
|
+
if (apiCache.has(self)) {
|
|
94
|
+
return apiCache.get(self);
|
|
95
|
+
}
|
|
91
96
|
const api = self;
|
|
92
97
|
const jsonSchemaDefs = {};
|
|
93
98
|
const spec = {
|
|
@@ -110,14 +115,12 @@ export const fromApi = self => {
|
|
|
110
115
|
defsPath: "#/components/schemas/"
|
|
111
116
|
});
|
|
112
117
|
}
|
|
113
|
-
function registerSecurity(
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
return id;
|
|
118
|
+
function registerSecurity(name, security) {
|
|
119
|
+
if (spec.components.securitySchemes[name]) {
|
|
120
|
+
return;
|
|
117
121
|
}
|
|
118
122
|
const scheme = makeSecurityScheme(security);
|
|
119
|
-
spec.components.securitySchemes[
|
|
120
|
-
return id;
|
|
123
|
+
spec.components.securitySchemes[name] = scheme;
|
|
121
124
|
}
|
|
122
125
|
Option.map(Context.getOption(api.annotations, Description), description => {
|
|
123
126
|
spec.info.description = description;
|
|
@@ -136,9 +139,9 @@ export const fromApi = self => {
|
|
|
136
139
|
return;
|
|
137
140
|
}
|
|
138
141
|
for (const [name, security] of Object.entries(middleware.security)) {
|
|
139
|
-
|
|
142
|
+
registerSecurity(name, security);
|
|
140
143
|
spec.security.push({
|
|
141
|
-
[
|
|
144
|
+
[name]: []
|
|
142
145
|
});
|
|
143
146
|
}
|
|
144
147
|
});
|
|
@@ -187,9 +190,9 @@ export const fromApi = self => {
|
|
|
187
190
|
return;
|
|
188
191
|
}
|
|
189
192
|
for (const [name, security] of Object.entries(middleware.security)) {
|
|
190
|
-
|
|
193
|
+
registerSecurity(name, security);
|
|
191
194
|
op.security.push({
|
|
192
|
-
[
|
|
195
|
+
[name]: []
|
|
193
196
|
});
|
|
194
197
|
}
|
|
195
198
|
});
|
|
@@ -290,6 +293,7 @@ export const fromApi = self => {
|
|
|
290
293
|
spec.paths[path][method] = op;
|
|
291
294
|
}
|
|
292
295
|
});
|
|
296
|
+
apiCache.set(self, spec);
|
|
293
297
|
return spec;
|
|
294
298
|
};
|
|
295
299
|
const makeSecurityScheme = security => {
|
|
@@ -308,10 +312,14 @@ const makeSecurityScheme = security => {
|
|
|
308
312
|
}
|
|
309
313
|
case "Bearer":
|
|
310
314
|
{
|
|
315
|
+
const format = Context.getOption(security.annotations, Format).pipe(Option.map(format => ({
|
|
316
|
+
bearerFormat: format
|
|
317
|
+
})), Option.getOrUndefined);
|
|
311
318
|
return {
|
|
312
319
|
...meta,
|
|
313
320
|
type: "http",
|
|
314
|
-
scheme: "bearer"
|
|
321
|
+
scheme: "bearer",
|
|
322
|
+
...format
|
|
315
323
|
};
|
|
316
324
|
}
|
|
317
325
|
case "ApiKey":
|
package/dist/esm/OpenApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenApi.js","names":["Context","HashSet","Option","Schema","AST","HttpApi","HttpApiMiddleware","HttpApiSchema","HttpMethod","JsonSchema","Identifier","Tag","Title","Version","Description","License","ExternalDocs","Servers","Override","annotations","context","empty","identifier","undefined","add","title","description","version","license","externalDocs","servers","override","fromApi","self","api","jsonSchemaDefs","spec","openapi","info","getOrElse","paths","tags","components","schemas","securitySchemes","security","makeJsonSchemaOrRef","schema","makeWithDefs","defs","defsPath","registerSecurity","tag","name","id","key","scheme","makeSecurityScheme","map","getOption","Object","assign","forEach","middlewares","middleware","isSecurity","entries","push","reflect","onGroup","group","onEndpoint","endpoint","errors","successes","path","replace","method","toLowerCase","op","operationId","topLevel","parameters","responses","payloadSchema","pipe","filter","hasBody","requestBody","content","getMultipart","ast","required","status","getDescriptionOrIdentifier","getEmptyDecodeable","make","isSome","pathSchema","value","properties","jsonSchema","in","includes","headersSchema","urlParamsSchema","meta","_tag","type","to","flatMapNullable","DescriptionAnnotationId","IdentifierAnnotationId"],"sources":["../../src/OpenApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"OpenApi.js","names":["Context","globalValue","HashSet","Option","Schema","AST","HttpApi","HttpApiMiddleware","HttpApiSchema","HttpMethod","JsonSchema","Identifier","Tag","Title","Version","Description","License","ExternalDocs","Servers","Format","Override","contextPartial","tags","entries","Object","options","context","empty","key","tag","undefined","add","annotations","identifier","title","version","description","license","externalDocs","servers","format","override","apiCache","WeakMap","fromApi","self","has","get","api","jsonSchemaDefs","spec","openapi","info","getOrElse","paths","components","schemas","securitySchemes","security","makeJsonSchemaOrRef","schema","makeWithDefs","defs","defsPath","registerSecurity","name","scheme","makeSecurityScheme","map","getOption","assign","forEach","middlewares","middleware","isSecurity","push","reflect","onGroup","group","onEndpoint","endpoint","errors","successes","path","replace","method","toLowerCase","op","operationId","topLevel","parameters","responses","payloadSchema","pipe","filter","hasBody","requestBody","content","getMultipart","ast","required","status","getDescriptionOrIdentifier","getEmptyDecodeable","make","isSome","pathSchema","value","properties","jsonSchema","in","includes","headersSchema","urlParamsSchema","set","meta","_tag","type","bearerFormat","getOrUndefined","to","flatMapNullable","DescriptionAnnotationId","IdentifierAnnotationId"],"sources":["../../src/OpenApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -29,8 +29,7 @@ export const withTracerDisabledForUrls = /*#__PURE__*/dual(2, (self, urls) => La
|
|
|
29
29
|
export const logger = /*#__PURE__*/make(httpApp => {
|
|
30
30
|
let counter = 0;
|
|
31
31
|
return Effect.withFiberRuntime(fiber => {
|
|
32
|
-
const
|
|
33
|
-
const request = Context.unsafeGet(context, ServerRequest.HttpServerRequest);
|
|
32
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
34
33
|
return Effect.withLogSpan(Effect.flatMap(Effect.exit(httpApp), exit => {
|
|
35
34
|
if (fiber.getFiberRef(loggerDisabled)) {
|
|
36
35
|
return exit;
|
|
@@ -52,8 +51,7 @@ export const logger = /*#__PURE__*/make(httpApp => {
|
|
|
52
51
|
});
|
|
53
52
|
/** @internal */
|
|
54
53
|
export const tracer = /*#__PURE__*/make(httpApp => Effect.withFiberRuntime(fiber => {
|
|
55
|
-
const
|
|
56
|
-
const request = Context.unsafeGet(context, ServerRequest.HttpServerRequest);
|
|
54
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
57
55
|
const disabled = fiber.getFiberRef(currentTracerDisabledWhen)(request);
|
|
58
56
|
if (disabled) {
|
|
59
57
|
return httpApp;
|
|
@@ -191,8 +189,7 @@ export const cors = options => {
|
|
|
191
189
|
};
|
|
192
190
|
const preResponseHandler = (request, response) => Effect.succeed(ServerResponse.setHeaders(response, headersFromRequest(request)));
|
|
193
191
|
return httpApp => Effect.withFiberRuntime(fiber => {
|
|
194
|
-
const
|
|
195
|
-
const request = Context.unsafeGet(context, ServerRequest.HttpServerRequest);
|
|
192
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest);
|
|
196
193
|
if (request.method === "OPTIONS") {
|
|
197
194
|
return Effect.succeed(ServerResponse.empty({
|
|
198
195
|
status: 204,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpMiddleware.js","names":["Context","Effect","FiberRef","constFalse","dual","globalValue","Layer","Option","Headers","ServerError","ServerRequest","ServerResponse","TraceContext","internalHttpApp","make","middleware","loggerDisabled","Symbol","for","unsafeMake","withLoggerDisabled","self","zipRight","set","currentTracerDisabledWhen","withTracerDisabledWhen","pred","locally","withTracerDisabledWhenEffect","withTracerDisabledForUrls","urls","req","includes","url","logger","httpApp","counter","withFiberRuntime","fiber","context","getFiberRef","currentContext","request","unsafeGet","HttpServerRequest","withLogSpan","flatMap","exit","_tag","response","cause","causeResponseStripped","annotateLogs","log","value","method","status","tracer","disabled","getOrUndefined","toURL","undefined","username","password","redactedHeaderNames","currentRedactedNames","redactedHeaders","redact","headers","useSpan","parent","fromHeaders","kind","captureStackTrace","span","attribute","toString","pathname","query","search","slice","protocol","name","String","remoteAddress","withParentSpan","exitResponse","xForwardedHeaders","updateService","modify","split","trim","searchParamsParser","params","searchParamsFromURL","URL","originalUrl","add","ParsedSearchParams","cors","options","opts","allowedOrigins","allowedMethods","allowedHeaders","exposedHeaders","credentials","isAllowedOrigin","origin","allowOrigin","originHeader","length","vary","allowMethods","join","allowCredentials","allowHeaders","accessControlRequestHeaders","exposeHeaders","maxAge","headersFromRequest","unsafeFromRecord","headersFromRequestOptions","preResponseHandler","succeed","setHeaders","empty","appendPreResponseHandler"],"sources":["../../../src/internal/httpMiddleware.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"httpMiddleware.js","names":["Context","Effect","FiberRef","constFalse","dual","globalValue","Layer","Option","Headers","ServerError","ServerRequest","ServerResponse","TraceContext","internalHttpApp","make","middleware","loggerDisabled","Symbol","for","unsafeMake","withLoggerDisabled","self","zipRight","set","currentTracerDisabledWhen","withTracerDisabledWhen","pred","locally","withTracerDisabledWhenEffect","withTracerDisabledForUrls","urls","req","includes","url","logger","httpApp","counter","withFiberRuntime","fiber","request","unsafeGet","currentContext","HttpServerRequest","withLogSpan","flatMap","exit","getFiberRef","_tag","response","cause","causeResponseStripped","annotateLogs","log","value","method","status","tracer","disabled","getOrUndefined","toURL","undefined","username","password","redactedHeaderNames","currentRedactedNames","redactedHeaders","redact","headers","useSpan","parent","fromHeaders","kind","captureStackTrace","span","attribute","toString","pathname","query","search","slice","protocol","name","String","remoteAddress","withParentSpan","exitResponse","xForwardedHeaders","updateService","modify","split","trim","searchParamsParser","context","params","searchParamsFromURL","URL","originalUrl","add","ParsedSearchParams","cors","options","opts","allowedOrigins","allowedMethods","allowedHeaders","exposedHeaders","credentials","isAllowedOrigin","origin","allowOrigin","originHeader","length","vary","allowMethods","join","allowCredentials","allowHeaders","accessControlRequestHeaders","exposeHeaders","maxAge","headersFromRequest","unsafeFromRecord","headersFromRequestOptions","preResponseHandler","succeed","setHeaders","empty","appendPreResponseHandler"],"sources":["../../../src/internal/httpMiddleware.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
package/src/HttpApp.ts
CHANGED
|
@@ -4,11 +4,12 @@
|
|
|
4
4
|
import * as Context from "effect/Context"
|
|
5
5
|
import * as Effect from "effect/Effect"
|
|
6
6
|
import * as Exit from "effect/Exit"
|
|
7
|
-
import * as FiberRef from "effect/FiberRef"
|
|
7
|
+
import type * as FiberRef from "effect/FiberRef"
|
|
8
8
|
import * as Layer from "effect/Layer"
|
|
9
9
|
import type * as Option from "effect/Option"
|
|
10
10
|
import * as Runtime from "effect/Runtime"
|
|
11
11
|
import * as Scope from "effect/Scope"
|
|
12
|
+
import { unify } from "effect/Unify"
|
|
12
13
|
import type { HttpMiddleware } from "./HttpMiddleware.js"
|
|
13
14
|
import * as ServerError from "./HttpServerError.js"
|
|
14
15
|
import * as ServerRequest from "./HttpServerRequest.js"
|
|
@@ -32,6 +33,8 @@ export type HttpApp<A = ServerResponse.HttpServerResponse, E = never, R = never>
|
|
|
32
33
|
*/
|
|
33
34
|
export type Default<E = never, R = never> = HttpApp<ServerResponse.HttpServerResponse, E, R>
|
|
34
35
|
|
|
36
|
+
const handledSymbol = Symbol.for("@effect/platform/HttpApp/handled")
|
|
37
|
+
|
|
35
38
|
/**
|
|
36
39
|
* @since 1.0.0
|
|
37
40
|
* @category combinators
|
|
@@ -45,53 +48,74 @@ export const toHandled = <E, R, _, EH, RH>(
|
|
|
45
48
|
middleware?: HttpMiddleware | undefined
|
|
46
49
|
): Effect.Effect<void, never, Exclude<R | RH | ServerRequest.HttpServerRequest, Scope.Scope>> => {
|
|
47
50
|
const responded = Effect.withFiberRuntime<
|
|
48
|
-
|
|
49
|
-
|
|
51
|
+
ServerResponse.HttpServerResponse,
|
|
52
|
+
E | EH | ServerError.ResponseError,
|
|
50
53
|
R | RH | ServerRequest.HttpServerRequest
|
|
51
|
-
>((fiber) =>
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
const preprocessResponse = (response: ServerResponse.HttpServerResponse) => {
|
|
54
|
+
>((fiber) =>
|
|
55
|
+
Effect.flatMap(self, (response) => {
|
|
56
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest)
|
|
55
57
|
const handler = fiber.getFiberRef(currentPreResponseHandlers)
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
58
|
+
if (handler._tag === "None") {
|
|
59
|
+
;(request as any)[handledSymbol] = true
|
|
60
|
+
return Effect.as(handleResponse(request, response), response)
|
|
61
|
+
}
|
|
62
|
+
return Effect.tap(handler.value(request, response), (response) => {
|
|
63
|
+
;(request as any)[handledSymbol] = true
|
|
64
|
+
return handleResponse(request, response)
|
|
65
|
+
})
|
|
66
|
+
})
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
const withErrorHandling = Effect.catchAllCause(
|
|
70
|
+
responded,
|
|
71
|
+
(cause) =>
|
|
72
|
+
Effect.withFiberRuntime<
|
|
73
|
+
ServerResponse.HttpServerResponse,
|
|
74
|
+
E | EH | ServerError.ResponseError,
|
|
75
|
+
ServerRequest.HttpServerRequest | RH
|
|
76
|
+
>((fiber) =>
|
|
77
|
+
Effect.flatMap(ServerError.causeResponse(cause), ([response, cause]) => {
|
|
78
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest)
|
|
79
|
+
const handler = fiber.getFiberRef(currentPreResponseHandlers)
|
|
80
|
+
if (handler._tag === "None") {
|
|
81
|
+
;(request as any)[handledSymbol] = true
|
|
82
|
+
return Effect.zipRight(handleResponse(request, response), Effect.failCause(cause))
|
|
83
|
+
}
|
|
84
|
+
return Effect.zipRight(
|
|
85
|
+
Effect.tap(handler.value(request, response), (response) => {
|
|
86
|
+
;(request as any)[handledSymbol] = true
|
|
64
87
|
return handleResponse(request, response)
|
|
65
88
|
}),
|
|
66
|
-
Effect.
|
|
67
|
-
)
|
|
68
|
-
onSuccess: (response) =>
|
|
69
|
-
Effect.tap(
|
|
70
|
-
preprocessResponse(response),
|
|
71
|
-
(response) => {
|
|
72
|
-
handled = true
|
|
73
|
-
return handleResponse(request, response)
|
|
74
|
-
}
|
|
75
|
-
)
|
|
76
|
-
})
|
|
77
|
-
const withTracer = internalMiddleware.tracer(responded)
|
|
78
|
-
if (middleware === undefined) {
|
|
79
|
-
return withTracer as any
|
|
80
|
-
}
|
|
81
|
-
return Effect.matchCauseEffect(middleware(withTracer), {
|
|
82
|
-
onFailure: (cause): Effect.Effect<void, EH, RH> => {
|
|
83
|
-
if (handled) {
|
|
84
|
-
return Effect.void
|
|
85
|
-
}
|
|
86
|
-
return Effect.matchCauseEffect(ServerError.causeResponse(cause), {
|
|
87
|
-
onFailure: (_cause) => handleResponse(request, ServerResponse.empty({ status: 500 })),
|
|
88
|
-
onSuccess: ([response]) => handleResponse(request, response)
|
|
89
|
+
Effect.failCause(cause)
|
|
90
|
+
)
|
|
89
91
|
})
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
92
|
+
)
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
const withMiddleware = unify(
|
|
96
|
+
middleware === undefined ?
|
|
97
|
+
internalMiddleware.tracer(withErrorHandling) :
|
|
98
|
+
Effect.matchCauseEffect(middleware(internalMiddleware.tracer(withErrorHandling)), {
|
|
99
|
+
onFailure: (cause): Effect.Effect<void, EH, RH> =>
|
|
100
|
+
Effect.withFiberRuntime((fiber) => {
|
|
101
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest)
|
|
102
|
+
if (handledSymbol in request) {
|
|
103
|
+
return Effect.void
|
|
104
|
+
}
|
|
105
|
+
return Effect.matchCauseEffect(ServerError.causeResponse(cause), {
|
|
106
|
+
onFailure: (_cause) => handleResponse(request, ServerResponse.empty({ status: 500 })),
|
|
107
|
+
onSuccess: ([response]) => handleResponse(request, response)
|
|
108
|
+
})
|
|
109
|
+
}),
|
|
110
|
+
onSuccess: (response): Effect.Effect<void, EH, RH> =>
|
|
111
|
+
Effect.withFiberRuntime((fiber) => {
|
|
112
|
+
const request = Context.unsafeGet(fiber.currentContext, ServerRequest.HttpServerRequest)
|
|
113
|
+
return handledSymbol in request ? Effect.void : handleResponse(request, response)
|
|
114
|
+
})
|
|
115
|
+
})
|
|
116
|
+
)
|
|
117
|
+
|
|
118
|
+
return Effect.uninterruptible(Effect.scoped(withMiddleware)) as any
|
|
95
119
|
}
|
|
96
120
|
|
|
97
121
|
/**
|