@effect/platform 0.69.0 → 0.69.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApiBuilder.js","names":["Chunk","Context","Effect","Encoding","FiberRef","identity","globalValue","HashMap","HashSet","Layer","ManagedRuntime","Option","ParseResult","pipeArguments","Redacted","Schema","unify","HttpApi","HttpApiDecodeError","HttpApiMiddleware","HttpApiSchema","HttpApp","HttpMethod","HttpMiddleware","HttpRouter","HttpServer","HttpServerRequest","HttpServerResponse","OpenApi","Router","Tag","api","effect","Api","map","context","serve","middleware","httpApp","pipe","app","unwrapEffect","provide","Live","gen","makeMiddlewareMap","middlewares","router","applyMiddleware","apiMiddleware","serviceOption","Middleware","errorSchema","makeErrorSchema","encodeError","encodeUnknown","_tag","value","catchAll","error","matchEffect","onFailure","die","onSuccess","succeed","toWebHandler","layer","options","runtime","make","merge","memoMap","handlerCached","handlerPromise","bindTo","bind","runtimeEffect","toWebHandlerRuntime","tap","handler","runPromise","request","undefined","then","dispose","HandlersTypeId","Symbol","for","HandlersProto","_Endpoints","arguments","handle","name","endpoint","unsafeGet","group","endpoints","makeHandlers","handlers","append","withFullResponse","handleRaw","self","Object","create","groupName","build","use","groups","result","empty","isEffect","groupMiddleware","routes","item","push","handlerToRoute","mapInputContext","input","concat","fromIterable","requestPayload","urlParams","isMultipart","hasBody","method","orDie","multipart","json","initial","Map","forEach","tag","set","key","endpoint_","isFullResponse","decodePath","pathSchema","decodeUnknown","payloadSchema","schema","getMultipart","ast","getOrElse","decodePayload","decodeHeaders","headersSchema","decodeUrlParams","urlParamsSchema","encodeSuccess","encode","makeSuccessSchema","successSchema","makeRoute","path","withFiberRuntime","fiber","getFiberRef","currentContext","routeContext","RouteContext","ParsedSearchParams","params","_","flatMap","headers","pathParams","payload","catchIf","isParseError","refailParseError","entry","values","SecurityTypeId","makeSecurityMiddleware","optional","previous","provides","provideService","provideServiceEffect","zipRight","securityMiddlewareCache","WeakMap","has","get","security","entries","decode","securityDecode","void","responseSchema","declare","isServerResponse","schemas","Set","deunionize","Union","Array","from","toResponseSuccess","toResponseError","decodeForbidden","__","fail","Forbidden","toResponseSchema","getStatus","cache","schemaToResponse","data","isEmpty","isVoid","to","status","encoding","getEncoding","kind","mapError","contentType","Type","text","uint8Array","transform","transformOrFail","getStatusSuccessAST","getStatusErrorAST","middlewareAdd","current","getOption","withContext","middlewareAddNoContext","args","apiFirst","isHttpApi","add","middlewareScoped","scoped","middlewareCors","cors","middlewareOpenApi","spec","fromApi","response","bearerLen","length","authorization","slice","Struct","String","in","schemaSearchParams","schemaCookies","schemaHeaders","match","username","password","decodeBase64String","header","parts","split","securitySetCookie","stringValue","appendPreResponseHandler","_req","setCookie","secure","httpOnly"],"sources":["../../src/HttpApiBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpApiBuilder.js","names":["Chunk","Context","Effect","Encoding","FiberRef","identity","globalValue","HashMap","HashSet","Layer","ManagedRuntime","Option","ParseResult","pipeArguments","Redacted","Schema","unify","HttpApi","HttpApiDecodeError","HttpApiMiddleware","HttpApiSchema","HttpApp","HttpMethod","HttpMiddleware","HttpRouter","HttpServer","HttpServerRequest","HttpServerResponse","OpenApi","Router","Tag","api","effect","Api","map","context","serve","middleware","httpApp","pipe","app","unwrapEffect","provide","Live","gen","makeMiddlewareMap","middlewares","router","applyMiddleware","apiMiddleware","serviceOption","Middleware","errorSchema","makeErrorSchema","encodeError","encodeUnknown","_tag","value","catchAll","error","matchEffect","onFailure","die","onSuccess","succeed","toWebHandler","layer","options","runtime","make","merge","memoMap","handlerCached","handlerPromise","bindTo","bind","runtimeEffect","toWebHandlerRuntime","tap","handler","runPromise","request","undefined","then","dispose","HandlersTypeId","Symbol","for","HandlersProto","_Endpoints","arguments","handle","name","endpoint","unsafeGet","group","endpoints","makeHandlers","handlers","append","withFullResponse","handleRaw","self","Object","create","groupName","build","use","groups","result","empty","isEffect","groupMiddleware","routes","item","push","handlerToRoute","mapInputContext","input","concat","fromIterable","requestPayload","urlParams","isMultipart","hasBody","method","orDie","multipart","json","initial","Map","forEach","tag","set","key","endpoint_","isFullResponse","decodePath","pathSchema","decodeUnknown","payloadSchema","schema","getMultipart","ast","getOrElse","decodePayload","decodeHeaders","headersSchema","decodeUrlParams","urlParamsSchema","encodeSuccess","encode","makeSuccessSchema","successSchema","makeRoute","path","withFiberRuntime","fiber","getFiberRef","currentContext","routeContext","RouteContext","ParsedSearchParams","params","_","flatMap","headers","pathParams","payload","catchIf","isParseError","refailParseError","entry","values","SecurityTypeId","makeSecurityMiddleware","optional","previous","provides","provideService","provideServiceEffect","zipRight","securityMiddlewareCache","WeakMap","has","get","security","entries","decode","securityDecode","void","responseSchema","declare","isServerResponse","schemas","Set","deunionize","Union","Array","from","toResponseSuccess","toResponseError","decodeForbidden","__","fail","Forbidden","toResponseSchema","getStatus","cache","schemaToResponse","data","isEmpty","isVoid","to","status","encoding","getEncoding","kind","mapError","contentType","Type","text","uint8Array","transform","transformOrFail","getStatusSuccessAST","getStatusErrorAST","middlewareAdd","current","getOption","withContext","middlewareAddNoContext","args","apiFirst","isHttpApi","add","middlewareScoped","scoped","middlewareCors","cors","middlewareOpenApi","spec","fromApi","response","bearerLen","length","authorization","slice","Struct","String","in","schemaSearchParams","schemaCookies","schemaHeaders","match","username","password","decodeBase64String","header","parts","split","securitySetCookie","stringValue","appendPreResponseHandler","_req","setCookie","secure","httpOnly"],"sources":["../../src/HttpApiBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApiMiddleware.js","names":["Context","hasProperty","Schema","TypeId","Symbol","for","SecurityTypeId","isSecurity","u","Tag","id","options","Err","globalThis","Error","limit","stackTraceLimit","creationError","TagClass","TagClass_","Object","setPrototypeOf","getPrototypeOf","GenericTag","key","defineProperty","get","stack","failure","optional","undefined","Never","provides","security","keys","length"],"sources":["../../src/HttpApiMiddleware.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AAEzC,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAKvC;;;;AAIA,OAAO,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,oCAAoC,CAAC;AAQrF;;;;AAIA,OAAO,MAAMC,cAAc,gBAAkBF,MAAM,CAACC,GAAG,CAAC,6CAA6C,CAAC;AAQtG;;;;AAIA,OAAO,MAAME,UAAU,GAAIC,CAAc,IAA+BP,WAAW,CAACO,CAAC,EAAEF,cAAc,CAAC;AAgOtG;;;;AAIA,OAAO,MAAMG,GAAG,GAAGA,CAAA,KAYnB,CACEC,EAAU,EACVC,OAKC,KACC;EACF,MAAMC,GAAG,GAAGC,UAAU,CAACC,KAAY;EACnC,MAAMC,KAAK,GAAGH,GAAG,CAACI,eAAe;EACjCJ,GAAG,CAACI,eAAe,GAAG,CAAC;EACvB,MAAMC,aAAa,GAAG,IAAIL,GAAG,EAAE;EAC/BA,GAAG,CAACI,eAAe,GAAGD,KAAK;EAE3B,SAASG,QAAQA,CAAA,GAAI;EACrB,MAAMC,SAAS,GAAGD,QAA+C;EACjEE,MAAM,CAACC,cAAc,CAACH,QAAQ,EAAEE,MAAM,CAACE,cAAc,CAACtB,OAAO,CAACuB,UAAU,CAAYb,EAAE,CAAC,CAAC,CAAC;EACzFQ,QAAQ,CAACM,GAAG,GAAGd,EAAE;EACjBU,MAAM,CAACK,cAAc,CAACP,QAAQ,EAAE,OAAO,EAAE;IACvCQ,GAAGA,CAAA;MACD,OAAOT,aAAa,CAACU,KAAK;IAC5B;GACD,CAAC;EACFR,SAAS,CAAChB,MAAM,CAAC,GAAGA,MAAM;EAC1BgB,SAAS,CAACS,OAAO,GAAGjB,OAAO,EAAEkB,QAAQ,KAAK,IAAI,IAAIlB,OAAO,EAAEiB,OAAO,KAAKE,SAAS,GAAG5B,MAAM,CAAC6B,KAAK,GAAGpB,OAAO,CAACiB,OAAO;EACjH,IAAIjB,OAAO,EAAEqB,QAAQ,EAAE;IACrBb,SAAS,CAACa,QAAQ,GAAGrB,OAAO,CAACqB,QAAQ;EACvC;EACAb,SAAS,CAACU,QAAQ,GAAGlB,OAAO,EAAEkB,QAAQ,IAAI,KAAK;EAC/C,IAAIlB,OAAO,EAAEsB,QAAQ,EAAE;IACrB,IAAIb,MAAM,CAACc,IAAI,CAACvB,OAAO,CAACsB,QAAQ,CAAC,CAACE,MAAM,KAAK,CAAC,EAAE;MAC9C,MAAM,IAAIrB,KAAK,CAAC,0DAA0D,CAAC;IAC7E;IACAK,SAAS,CAACb,cAAc,CAAC,GAAGA,cAAc;IAC1Ca,SAAS,CAACc,QAAQ,GAAGtB,OAAO,CAACsB,QAAQ;EACvC;EACA,OAAOf,QAAe;AACxB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"HttpApiMiddleware.js","names":["Context","hasProperty","Schema","TypeId","Symbol","for","SecurityTypeId","isSecurity","u","Tag","id","options","Err","globalThis","Error","limit","stackTraceLimit","creationError","TagClass","TagClass_","Object","setPrototypeOf","getPrototypeOf","GenericTag","key","defineProperty","get","stack","failure","optional","undefined","Never","provides","security","keys","length"],"sources":["../../src/HttpApiMiddleware.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AAEzC,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAKvC;;;;AAIA,OAAO,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,oCAAoC,CAAC;AAQrF;;;;AAIA,OAAO,MAAMC,cAAc,gBAAkBF,MAAM,CAACC,GAAG,CAAC,6CAA6C,CAAC;AAQtG;;;;AAIA,OAAO,MAAME,UAAU,GAAIC,CAAc,IAA+BP,WAAW,CAACO,CAAC,EAAEF,cAAc,CAAC;AA+NtG;;;;AAIA,OAAO,MAAMG,GAAG,GAAGA,CAAA,KAYnB,CACEC,EAAU,EACVC,OAKC,KACC;EACF,MAAMC,GAAG,GAAGC,UAAU,CAACC,KAAY;EACnC,MAAMC,KAAK,GAAGH,GAAG,CAACI,eAAe;EACjCJ,GAAG,CAACI,eAAe,GAAG,CAAC;EACvB,MAAMC,aAAa,GAAG,IAAIL,GAAG,EAAE;EAC/BA,GAAG,CAACI,eAAe,GAAGD,KAAK;EAE3B,SAASG,QAAQA,CAAA,GAAI;EACrB,MAAMC,SAAS,GAAGD,QAA+C;EACjEE,MAAM,CAACC,cAAc,CAACH,QAAQ,EAAEE,MAAM,CAACE,cAAc,CAACtB,OAAO,CAACuB,UAAU,CAAYb,EAAE,CAAC,CAAC,CAAC;EACzFQ,QAAQ,CAACM,GAAG,GAAGd,EAAE;EACjBU,MAAM,CAACK,cAAc,CAACP,QAAQ,EAAE,OAAO,EAAE;IACvCQ,GAAGA,CAAA;MACD,OAAOT,aAAa,CAACU,KAAK;IAC5B;GACD,CAAC;EACFR,SAAS,CAAChB,MAAM,CAAC,GAAGA,MAAM;EAC1BgB,SAAS,CAACS,OAAO,GAAGjB,OAAO,EAAEkB,QAAQ,KAAK,IAAI,IAAIlB,OAAO,EAAEiB,OAAO,KAAKE,SAAS,GAAG5B,MAAM,CAAC6B,KAAK,GAAGpB,OAAO,CAACiB,OAAO;EACjH,IAAIjB,OAAO,EAAEqB,QAAQ,EAAE;IACrBb,SAAS,CAACa,QAAQ,GAAGrB,OAAO,CAACqB,QAAQ;EACvC;EACAb,SAAS,CAACU,QAAQ,GAAGlB,OAAO,EAAEkB,QAAQ,IAAI,KAAK;EAC/C,IAAIlB,OAAO,EAAEsB,QAAQ,EAAE;IACrB,IAAIb,MAAM,CAACc,IAAI,CAACvB,OAAO,CAACsB,QAAQ,CAAC,CAACE,MAAM,KAAK,CAAC,EAAE;MAC9C,MAAM,IAAIrB,KAAK,CAAC,0DAA0D,CAAC;IAC7E;IACAK,SAAS,CAACb,cAAc,CAAC,GAAGA,cAAc;IAC1Ca,SAAS,CAACc,QAAQ,GAAGtB,OAAO,CAACsB,QAAQ;EACvC;EACA,OAAOf,QAAe;AACxB,CAAC","ignoreList":[]}
@@ -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
- let handled = false;
23
- const request = Context.unsafeGet(fiber.getFiberRef(FiberRef.currentContext), ServerRequest.HttpServerRequest);
24
- const preprocessResponse = response => {
25
- const handler = fiber.getFiberRef(currentPreResponseHandlers);
26
- return handler._tag === "Some" ? handler.value(request, response) : Effect.succeed(response);
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.matchCauseEffect(middleware(withTracer), {
43
- onFailure: cause => {
44
- if (handled) {
45
- return Effect.void;
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
- return Effect.uninterruptible(Effect.scoped(responded));
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
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApp.js","names":["Context","Effect","Exit","FiberRef","Layer","Runtime","Scope","ServerError","ServerRequest","ServerResponse","internal","internalMiddleware","toHandled","self","handleResponse","middleware","responded","withFiberRuntime","fiber","handled","request","unsafeGet","getFiberRef","currentContext","HttpServerRequest","preprocessResponse","response","handler","currentPreResponseHandlers","_tag","value","succeed","matchCauseEffect","onFailure","cause","flatMap","causeResponse","pipe","zipRight","failCause","onSuccess","tap","withTracer","tracer","undefined","void","_cause","empty","status","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":[]}
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":[]}
@@ -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 context = fiber.getFiberRef(FiberRef.currentContext);
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 context = fiber.getFiberRef(FiberRef.currentContext);
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 context = fiber.getFiberRef(FiberRef.currentContext);
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.69.0",
3
+ "version": "0.69.2",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -137,6 +137,8 @@ export const httpApp: Effect.Effect<
137
137
  * const { dispose, handler } = HttpApiBuilder.toWebHandler(
138
138
  * Layer.mergeAll(
139
139
  * MyApiLive,
140
+ * // you could also use NodeHttpServer.layerContext, depending on your
141
+ * // server's platform
140
142
  * HttpServer.layerContext
141
143
  * )
142
144
  * )
@@ -123,20 +123,19 @@ export type TagClass<
123
123
  Self,
124
124
  Name extends string,
125
125
  Options
126
- > = Options extends { readonly security: Record<string, HttpApiSecurity.HttpApiSecurity> } ?
127
- & TagClass.Base<
128
- Self,
129
- Name,
130
- Options,
131
- Simplify<
132
- HttpApiMiddlewareSecurity<
133
- Options["security"],
134
- TagClass.Service<Options>,
135
- TagClass.FailureService<Options>
136
- >
126
+ > = Options extends { readonly security: Record<string, HttpApiSecurity.HttpApiSecurity> } ? TagClass.BaseSecurity<
127
+ Self,
128
+ Name,
129
+ Options,
130
+ Simplify<
131
+ HttpApiMiddlewareSecurity<
132
+ Options["security"],
133
+ TagClass.Service<Options>,
134
+ TagClass.FailureService<Options>
137
135
  >
138
- >
139
- & TagClass.SecurityFields<Options["security"]>
136
+ >,
137
+ Options["security"]
138
+ >
140
139
  : TagClass.Base<
141
140
  Self,
142
141
  Name,
@@ -182,7 +181,9 @@ export declare namespace TagClass {
182
181
  * @since 1.0.0
183
182
  * @category models
184
183
  */
185
- export type Failure<Options> = Schema.Schema.Type<FailureSchema<Options>>
184
+ export type Failure<Options> = Options extends
185
+ { readonly failure: Schema.Schema<infer _A, infer _I, infer _R>; readonly optional?: false } ? _A
186
+ : never
186
187
 
187
188
  /**
188
189
  * @since 1.0.0
@@ -206,17 +207,7 @@ export declare namespace TagClass {
206
207
  * @since 1.0.0
207
208
  * @category models
208
209
  */
209
- export type Base<Self, Name extends string, Options, Service> =
210
- & BaseConstructor<Self, Name, Options, Service>
211
- & (Optional<Options> extends true ? {}
212
- : Options extends { readonly provides: Context.Tag<any, any> } ? { readonly provides: Options["provides"] }
213
- : {})
214
-
215
- /**
216
- * @since 1.0.0
217
- * @category models
218
- */
219
- export interface BaseConstructor<Self, Name extends string, Options, Service> extends Context.Tag<Self, Service> {
210
+ export interface Base<Self, Name extends string, Options, Service> extends Context.Tag<Self, Service> {
220
211
  new(_: never):
221
212
  & Context.TagClassShape<Name, Service>
222
213
  & {
@@ -229,13 +220,21 @@ export declare namespace TagClass {
229
220
  readonly [TypeId]: TypeId
230
221
  readonly optional: Optional<Options>
231
222
  readonly failure: FailureSchema<Options>
223
+ readonly provides: Options extends { readonly provides: Context.Tag<any, any> } ? Options["provides"]
224
+ : undefined
232
225
  }
233
226
 
234
227
  /**
235
228
  * @since 1.0.0
236
229
  * @category models
237
230
  */
238
- export interface SecurityFields<Security extends Record<string, HttpApiSecurity.HttpApiSecurity>> {
231
+ export interface BaseSecurity<
232
+ Self,
233
+ Name extends string,
234
+ Options,
235
+ Service,
236
+ Security extends Record<string, HttpApiSecurity.HttpApiSecurity>
237
+ > extends Base<Self, Name, Options, Service> {
239
238
  readonly [SecurityTypeId]: SecurityTypeId
240
239
  readonly security: Security
241
240
  }
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
- void,
49
- never,
51
+ ServerResponse.HttpServerResponse,
52
+ E | EH | ServerError.ResponseError,
50
53
  R | RH | ServerRequest.HttpServerRequest
51
- >((fiber) => {
52
- let handled = false
53
- const request = Context.unsafeGet(fiber.getFiberRef(FiberRef.currentContext), ServerRequest.HttpServerRequest)
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
- return handler._tag === "Some" ? handler.value(request, response) : Effect.succeed(response)
57
- }
58
- const responded = Effect.matchCauseEffect(self, {
59
- onFailure: (cause) =>
60
- Effect.flatMap(ServerError.causeResponse(cause), ([response, cause]) =>
61
- preprocessResponse(response).pipe(
62
- Effect.flatMap((response) => {
63
- handled = true
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.zipRight(Effect.failCause(cause))
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
- onSuccess: (response): Effect.Effect<void, EH, RH> => handled ? Effect.void : handleResponse(request, response)
92
- })
93
- })
94
- return Effect.uninterruptible(Effect.scoped(responded))
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
  /**