@effect/platform 0.87.8 → 0.87.9

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/README.md CHANGED
@@ -5098,3 +5098,36 @@ HttpLayerRouter.serve(RpcRoute).pipe(
5098
5098
  NodeRuntime.runMain
5099
5099
  )
5100
5100
  ```
5101
+
5102
+ ## Create a web handler
5103
+
5104
+ ```ts
5105
+ import * as HttpLayerRouter from "@effect/platform/HttpLayerRouter"
5106
+ import * as HttpServerResponse from "@effect/platform/HttpServerResponse"
5107
+ import * as Effect from "effect/Effect"
5108
+
5109
+ const HelloRoute = HttpLayerRouter.use(
5110
+ Effect.fn(function*(router) {
5111
+ yield* router.add(
5112
+ "GET",
5113
+ "/hello",
5114
+ HttpServerResponse.text("Hellow, World!")
5115
+ )
5116
+ })
5117
+ )
5118
+
5119
+ const { dispose, handler } = HttpLayerRouter.toWebHandler(HelloRoute)
5120
+
5121
+ // When the process is interrupted, we want to clean up resources
5122
+ process.on("SIGINT", () => {
5123
+ dispose()
5124
+ .then(() => {
5125
+ process.exit(0)
5126
+ }, () => {
5127
+ process.exit(1)
5128
+ })
5129
+ })
5130
+
5131
+ // Use the handler in your server setup
5132
+ export { handler }
5133
+ ```
@@ -42,7 +42,7 @@ Object.defineProperty(exports, "schemaPathParams", {
42
42
  return _HttpRouter.schemaPathParams;
43
43
  }
44
44
  });
45
- exports.use = exports.toHttpEffect = exports.serve = void 0;
45
+ exports.use = exports.toWebHandler = exports.toHttpEffect = exports.serve = void 0;
46
46
  var HttpServerRequest = _interopRequireWildcard(require("@effect/platform/HttpServerRequest"));
47
47
  var HttpServerResponse = _interopRequireWildcard(require("@effect/platform/HttpServerResponse"));
48
48
  var Arr = _interopRequireWildcard(require("effect/Array"));
@@ -51,6 +51,7 @@ var Effect = _interopRequireWildcard(require("effect/Effect"));
51
51
  var FiberRef = _interopRequireWildcard(require("effect/FiberRef"));
52
52
  var _Function = require("effect/Function");
53
53
  var Layer = _interopRequireWildcard(require("effect/Layer"));
54
+ var ManagedRuntime = _interopRequireWildcard(require("effect/ManagedRuntime"));
54
55
  var Option = _interopRequireWildcard(require("effect/Option"));
55
56
  var Scope = _interopRequireWildcard(require("effect/Scope"));
56
57
  var Tracer = _interopRequireWildcard(require("effect/Tracer"));
@@ -58,6 +59,7 @@ var FindMyWay = _interopRequireWildcard(require("find-my-way-ts"));
58
59
  var _FindMyWay = FindMyWay;
59
60
  exports.FindMyWay = FindMyWay;
60
61
  var HttpApiBuilder = _interopRequireWildcard(require("./HttpApiBuilder.js"));
62
+ var HttpApp = _interopRequireWildcard(require("./HttpApp.js"));
61
63
  var HttpMiddleware = _interopRequireWildcard(require("./HttpMiddleware.js"));
62
64
  var _HttpRouter = require("./HttpRouter.js");
63
65
  var HttpServer = _interopRequireWildcard(require("./HttpServer.js"));
@@ -528,9 +530,13 @@ const addHttpApi = (api, options) => {
528
530
  const ApiMiddleware = middleware(HttpApiBuilder.buildMiddleware(api)).layer;
529
531
  return HttpApiBuilder.Router.unwrap(Effect.fnUntraced(function* (router_) {
530
532
  const router = yield* HttpRouter;
533
+ const context = yield* Effect.context();
531
534
  const routes = Arr.empty();
532
535
  for (const route of router_.routes) {
533
- routes.push(makeRoute(route));
536
+ routes.push(makeRoute({
537
+ ...route,
538
+ handler: Effect.provide(route.handler, context)
539
+ }));
534
540
  }
535
541
  yield* router.addAll(routes);
536
542
  if (options?.openapiPath) {
@@ -558,5 +564,37 @@ const serve = (appLayer, options) => {
558
564
  return middleware ? HttpServer.serve(handler, middleware) : HttpServer.serve(handler);
559
565
  }).pipe(Layer.unwrapScoped, Layer.provide(appLayer), Layer.provide(RouterLayer), options?.disableListenLog ? _Function.identity : HttpServer.withLogAddress);
560
566
  };
567
+ /**
568
+ * @since 1.0.0
569
+ * @category Server
570
+ */
561
571
  exports.serve = serve;
572
+ const toWebHandler = (appLayer, options) => {
573
+ let middleware = options?.middleware;
574
+ if (options?.disableLogger !== true) {
575
+ middleware = middleware ? (0, _Function.compose)(middleware, HttpMiddleware.logger) : HttpMiddleware.logger;
576
+ }
577
+ const RouterLayer = options?.routerConfig ? Layer.provide(layer, Layer.succeed(RouterConfig, options.routerConfig)) : layer;
578
+ const runtime = ManagedRuntime.make(Layer.provideMerge(appLayer, RouterLayer), options?.memoMap);
579
+ let handlerCached;
580
+ const handlerPromise = Effect.gen(function* () {
581
+ const router = yield* HttpRouter;
582
+ const effect = router.asHttpEffect();
583
+ const rt = yield* runtime.runtimeEffect;
584
+ const handler = HttpApp.toWebHandlerRuntime(rt)(effect, middleware);
585
+ handlerCached = handler;
586
+ return handler;
587
+ }).pipe(runtime.runPromise);
588
+ function handler(request, context) {
589
+ if (handlerCached !== undefined) {
590
+ return handlerCached(request, context);
591
+ }
592
+ return handlerPromise.then(handler => handler(request, context));
593
+ }
594
+ return {
595
+ handler,
596
+ dispose: runtime.dispose
597
+ };
598
+ };
599
+ exports.toWebHandler = toWebHandler;
562
600
  //# sourceMappingURL=HttpLayerRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HttpLayerRouter.js","names":["HttpServerRequest","_interopRequireWildcard","require","HttpServerResponse","Arr","Context","Effect","FiberRef","_Function","Layer","Option","Scope","Tracer","FindMyWay","_FindMyWay","exports","HttpApiBuilder","HttpMiddleware","_HttpRouter","HttpServer","HttpServerError","OpenApi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","Symbol","for","HttpRouter","GenericTag","make","gen","router","RouterConfig","middleware","Set","addAll","routes","contextWith","context","getMiddleware","applyMiddleware","effect","length","route","makeRoute","handler","method","all","path","on","of","prefixed","prefix","newPrefix","prefixPath","map","prefixRoute","add","options","isEffect","flatMap","uninterruptible","some","addGlobalMiddleware","middleware_","sync","asHttpEffect","withFiberRuntime","fiber","contextMap","Map","currentContext","unsafeMap","request","key","result","find","url","undefined","fail","RouteNotFound","_tag","sliceRequestUrl","value","ParsedSearchParams","searchParams","RouteContext","RouteContextTypeId","params","span","ParentSpan","attribute","locally","interruptible","unsafeMake","size","fn","reverse","prefexLen","modify","slice","Reference","defaultValue","constant","use","scopedDiscard","toAdd","layer","toHttpEffect","appLayer","scope","memoMap","CurrentMemoMap","buildWithMemoMap","provideMerge","RouteTypeId","none","removeTrailingSlash","endsWith","dual","self","match","onNone","onSome","existingPrefix","MiddlewareTypeId","arguments","makeMiddleware","global","MiddlewareImpl","scopedContext","fnContextKey","succeedContext","middlewareId","layerFn","dependencies","constructor","contextKey","stack","depsContext","push","pipe","provide","combine","other","middlewareCache","arr","topLevel","empty","maxLength","startsWith","fromIterable","cors","disableLogger","withLoggerDisabled","addHttpApi","api","ApiMiddleware","buildMiddleware","Router","unwrap","fnUntraced","router_","openapiPath","spec","fromApi","succeed","unsafeJson","effectDiscard","serve","compose","logger","RouterLayer","routerConfig","unwrapScoped","disableListenLog","identity","withLogAddress"],"sources":["../../src/HttpLayerRouter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpLayerRouter.js","names":["HttpServerRequest","_interopRequireWildcard","require","HttpServerResponse","Arr","Context","Effect","FiberRef","_Function","Layer","ManagedRuntime","Option","Scope","Tracer","FindMyWay","_FindMyWay","exports","HttpApiBuilder","HttpApp","HttpMiddleware","_HttpRouter","HttpServer","HttpServerError","OpenApi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","Symbol","for","HttpRouter","GenericTag","make","gen","router","RouterConfig","middleware","Set","addAll","routes","contextWith","context","getMiddleware","applyMiddleware","effect","length","route","makeRoute","handler","method","all","path","on","of","prefixed","prefix","newPrefix","prefixPath","map","prefixRoute","add","options","isEffect","flatMap","uninterruptible","some","addGlobalMiddleware","middleware_","sync","asHttpEffect","withFiberRuntime","fiber","contextMap","Map","currentContext","unsafeMap","request","key","result","find","url","undefined","fail","RouteNotFound","_tag","sliceRequestUrl","value","ParsedSearchParams","searchParams","RouteContext","RouteContextTypeId","params","span","ParentSpan","attribute","locally","interruptible","unsafeMake","size","fn","reverse","prefexLen","modify","slice","Reference","defaultValue","constant","use","scopedDiscard","toAdd","layer","toHttpEffect","appLayer","scope","memoMap","CurrentMemoMap","buildWithMemoMap","provideMerge","RouteTypeId","none","removeTrailingSlash","endsWith","dual","self","match","onNone","onSome","existingPrefix","MiddlewareTypeId","arguments","makeMiddleware","global","MiddlewareImpl","scopedContext","fnContextKey","succeedContext","middlewareId","layerFn","dependencies","constructor","contextKey","stack","depsContext","push","pipe","provide","combine","other","middlewareCache","arr","topLevel","empty","maxLength","startsWith","fromIterable","cors","disableLogger","withLoggerDisabled","addHttpApi","api","ApiMiddleware","buildMiddleware","Router","unwrap","fnUntraced","router_","openapiPath","spec","fromApi","succeed","unsafeJson","effectDiscard","serve","compose","logger","RouterLayer","routerConfig","unwrapScoped","disableListenLog","identity","withLogAddress","toWebHandler","runtime","handlerCached","handlerPromise","rt","runtimeEffect","toWebHandlerRuntime","runPromise","then","dispose"],"sources":["../../src/HttpLayerRouter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -10,12 +10,16 @@ import * as Option from "effect/Option";
10
10
  import * as Scope from "effect/Scope";
11
11
  import type * as Types from "effect/Types";
12
12
  import * as FindMyWay from "find-my-way-ts";
13
+ import type * as Etag from "./Etag.js";
14
+ import type { FileSystem } from "./FileSystem.js";
13
15
  import type * as HttpApi from "./HttpApi.js";
14
16
  import type * as HttpApiGroup from "./HttpApiGroup.js";
15
17
  import type * as HttpMethod from "./HttpMethod.js";
18
+ import type { HttpPlatform } from "./HttpPlatform.js";
16
19
  import { RouteContext } from "./HttpRouter.js";
17
20
  import * as HttpServer from "./HttpServer.js";
18
21
  import * as HttpServerError from "./HttpServerError.js";
22
+ import type { Path } from "./Path.js";
19
23
  /**
20
24
  * @since 1.0.0
21
25
  * @category Re-exports
@@ -534,7 +538,7 @@ export declare const disableLogger: Layer.Layer<never>;
534
538
  */
535
539
  export declare const addHttpApi: <Id extends string, Groups extends HttpApiGroup.HttpApiGroup.Any, E, R>(api: HttpApi.HttpApi<Id, Groups, E, R>, options?: {
536
540
  readonly openapiPath?: `/${string}` | undefined;
537
- }) => Layer.Layer<never, never, HttpRouter | HttpApiGroup.HttpApiGroup.ToService<Id, Groups> | R | HttpApiGroup.HttpApiGroup.ErrorContext<Groups>>;
541
+ }) => Layer.Layer<never, never, Etag.Generator | HttpRouter | FileSystem | HttpPlatform | Path | R | HttpApiGroup.HttpApiGroup.ToService<Id, Groups> | HttpApiGroup.HttpApiGroup.ErrorContext<Groups>>;
538
542
  /**
539
543
  * Serves the provided application layer as an HTTP server.
540
544
  *
@@ -557,5 +561,29 @@ export declare const serve: <A, E, R, HE, HR = Type.Only<"Requires", R> | Type.O
557
561
  * response.
558
562
  */
559
563
  readonly middleware?: (effect: Effect.Effect<HttpServerResponse.HttpServerResponse, Type.Only<"Error", R> | Type.Only<"GlobalError", R> | HttpServerError.RouteNotFound, Scope.Scope | HttpServerRequest.HttpServerRequest | Type.Only<"Requires", R> | Type.Only<"GlobalRequires", R>>) => Effect.Effect<HttpServerResponse.HttpServerResponse, HE, HR>;
560
- }) => Layer.Layer<never, Type.Without<E>, HttpServer.HttpServer | Exclude<Type.Without<R> | Exclude<HR, Provided>, HttpRouter>>;
564
+ }) => Layer.Layer<never, Type.Without<E>, HttpServer.HttpServer | Exclude<Type.Without<R> | Exclude<HR, GlobalProvided>, HttpRouter>>;
565
+ /**
566
+ * @since 1.0.0
567
+ * @category Server
568
+ */
569
+ export declare const toWebHandler: <A, E, R extends HttpRouter | Type<"Requires", any> | Type<"GlobalRequires", any> | Type<"Error", any> | Type<"GlobalError", any>, HE, HR = Type.Only<"Requires", R> | Type.Only<"GlobalRequires", R>>(appLayer: Layer.Layer<A, E, R>, options?: {
570
+ readonly memoMap?: Layer.MemoMap | undefined;
571
+ readonly routerConfig?: Partial<FindMyWay.RouterConfig> | undefined;
572
+ readonly disableLogger?: boolean | undefined;
573
+ /**
574
+ * Middleware to apply to the HTTP server.
575
+ *
576
+ * NOTE: This middleware is applied to the entire HTTP server chain,
577
+ * including the sending of the response. This means that modifications
578
+ * to the response **WILL NOT** be reflected in the final response sent to the
579
+ * client.
580
+ *
581
+ * Use HttpLayerRouter.middleware to create middleware that can modify the
582
+ * response.
583
+ */
584
+ readonly middleware?: (effect: Effect.Effect<HttpServerResponse.HttpServerResponse, Type.Only<"Error", R> | Type.Only<"GlobalError", R> | HttpServerError.RouteNotFound, Scope.Scope | HttpServerRequest.HttpServerRequest | Type.Only<"Requires", R> | Type.Only<"GlobalRequires", R>>) => Effect.Effect<HttpServerResponse.HttpServerResponse, HE, HR>;
585
+ }) => {
586
+ readonly handler: [HR] extends [never] ? ((request: Request, context?: Context.Context<never> | undefined) => Promise<Response>) : ((request: Request, context: Context.Context<HR>) => Promise<Response>);
587
+ readonly dispose: () => Promise<void>;
588
+ };
561
589
  //# sourceMappingURL=HttpLayerRouter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HttpLayerRouter.d.ts","sourceRoot":"","sources":["../../src/HttpLayerRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpLayerRouter.d.ts","sourceRoot":"","sources":["../../src/HttpLayerRouter.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,oCAAoC,CAAA;AACvE,OAAO,KAAK,kBAAkB,MAAM,qCAAqC,CAAA;AAEzE,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAA;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAE5C,OAAO,KAAK,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAsB,MAAM,iBAAiB,CAAA;AAClE,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAErC;;;GAGG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAkE,CAAA;AAE9F;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IAEzB,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,CAAA;IAEjD,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EACjB,MAAM,EAAE,GAAG,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,EACrE,IAAI,EAAE,SAAS,EACf,OAAO,EACH,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,GAC1D,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAClH,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,GAAG,SAAS,KACrE,MAAM,CAAC,MAAM,CAChB,IAAI,EACJ,KAAK,EACL,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CACpE,CAAA;IAED,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,SAAS,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACnE,MAAM,EAAE,MAAM,KACX,MAAM,CAAC,MAAM,CAChB,IAAI,EACJ,KAAK,EACH,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,GACvE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAClD,CAAA;IAED,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,CAAC,EACjC,UAAU,EACN,CAAC,CACD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,SAAS,CAAC,KACpE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAC9D,CAAC,SAAS,SAAS,CAAC,GAAG,OAAO,GAAG,8BAA8B,CAAC,KACjE,MAAM,CAAC,MAAM,CAChB,IAAI,EACJ,KAAK,EACH,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,GACvD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAClD,CAAA;IAED,QAAQ,CAAC,YAAY,EAAE,MAAM,MAAM,CAAC,MAAM,CACxC,kBAAkB,CAAC,kBAAkB,EACrC,OAAO,EACP,iBAAiB,CAAC,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAClD,CAAA;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAE1D,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,yCAwGf,CAAA;;AAOF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,iBAEhC;CAAG;AAEL,OAAO;AACL;;;GAGG;AACH,MAAM;AACN;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,UAAU;AACV;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,gBAAgB,EACjB,MAAM,iBAAiB,CAAA;AAExB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EACzB,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAChD,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAuD,CAAA;AAEpH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,CAAC,EACtB,QAAQ,GAAG,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,EACrE,MAAM,SAAS,EACf,SACI,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,GAC1D,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAClH,UAAU;IACR,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC/C,KACA,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAChD,CAAA;AAE7D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,MAAM,GAAI,MAAM,SAAS,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK,EAC1F,QAAQ,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAC9C,UAAU;IACR,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC,KACA,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,EAAE,EACA,UAAU,GACV,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,GACxB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,GACvE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAS9C,CAAA;AAEL;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAkC,CAAA;AAE5E;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAClC,UAAU,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC7B,MAAM,CAAC,MAAM,CACd,MAAM,CAAC,MAAM,CACX,kBAAkB,CAAC,kBAAkB,EACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,aAAa,EACtF,KAAK,CAAC,KAAK,GAAG,iBAAiB,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAC9G,EACD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EACf,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,KAAK,CAYzC,CAAA;AAEX;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,OAAO,MAA6D,CAAA;AAE9F;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAA;AAE5C;;;GAGG;AACH,MAAM,WAAW,KAAK,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK;IACzC,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IACnC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,GAAG,GAAG,CAAA;IAC5C,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5E,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACvC;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B;;;OAGG;IACH,KAAY,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAE7F;;;OAGG;IACH,KAAY,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;CAChG;AAgBD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,EACxB,QAAQ,GAAG,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,EACrE,MAAM,SAAS,EACf,SACI,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,GAC1D,CAAC,CAAC,OAAO,EAAE,iBAAiB,CAAC,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAClH,UAAU;IACR,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC/C,KACA,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAO5B,CAAA;AAEJ;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,EAAE,GAAG,GAAG,CAAA;AAM1C;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE;IACvB;;;OAGG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;IAC1C;;;OAGG;IACH,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;CAItC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE;IACxB;;;OAGG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1D;;;OAGG;IACH,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CASnD,CAAA;AAEL;;;;;;GAMG;AACH,MAAM,WAAW,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B;;;OAGG;IACH,KAAY,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,KAAK,CAAA;IAEpF;;;OAGG;IACH,KAAY,IAAI,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAEpF;;;OAGG;IACH,KAAY,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,KAAK,EAAE,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAA;CAC1E;AAED;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAChB,iBAAiB,CAAC,iBAAiB,GACnC,KAAK,CAAC,KAAK,GACX,iBAAiB,CAAC,kBAAkB,GACpC,YAAY,CAAA;AAEhB;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GACtB,iBAAiB,CAAC,iBAAiB,GACnC,KAAK,CAAC,KAAK,CAAA;AAEf;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,MAAkE,CAAA;AAExG;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAA;AAEtD;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU,CACzB,MAAM,SAAS;IACb,QAAQ,EAAE,GAAG,CAAA;IACb,OAAO,EAAE,GAAG,CAAA;IACZ,KAAK,EAAE,GAAG,CAAA;IACV,QAAQ,EAAE,GAAG,CAAA;IACb,UAAU,EAAE,GAAG,CAAA;IACf,aAAa,EAAE,GAAG,CAAA;CACnB;IAED,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEnC,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAC9D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,EACzC,MAAM,CAAC,YAAY,CAAC,EAClB,MAAM,CAAC,eAAe,CAAC,GACvB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,GACzC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CACtC,GACC,4EAA4E,CAAA;IAEhF,QAAQ,CAAC,OAAO,EAAE,CAChB,OAAO,SAAS;QACd,QAAQ,EAAE,GAAG,CAAA;QACb,OAAO,EAAE,GAAG,CAAA;QACZ,KAAK,EAAE,GAAG,CAAA;QACV,QAAQ,EAAE,GAAG,CAAA;QACb,UAAU,EAAE,GAAG,CAAA;QACf,aAAa,EAAE,GAAG,CAAA;KACnB,EACD,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC;QAC1C,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;QAClD,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/C,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;QACtE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;QAChF,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;QACxD,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;KAClE,CAAC,CAAA;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,UAAU,EACnB,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,GAC7B,CAAC,CACD,MAAM,SAAS;IACb,QAAQ,CAAC,EAAE,GAAG,CAAA;IACd,OAAO,CAAC,EAAE,GAAG,CAAA;CACd,GAAG,EAAE,OACD,UAAU,CAAC,IAAI,CACpB,MAAM,SAAS;IAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,EAChD,MAAM,SAAS;IAAE,OAAO,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAChD,CAKA,CAAA;AAqGH;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC;;;OAGG;IACH,KAAY,IAAI,CAAC,QAAQ,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI;QACpD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,EACjD,UAAU,EAAE,MAAM,CAAC,MAAM,CACvB,CACE,MAAM,EAAE,MAAM,CAAC,MAAM,CACnB,kBAAkB,CAAC,kBAAkB,EACrC,KAAK,CAAC,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,EAClC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CACxB,KAEC,MAAM,CAAC,MAAM,CACb,kBAAkB,CAAC,kBAAkB,EACrC,CAAC,EACD,CAAC,CACF,GACC,CAAC,SAAS,SAAS,CAAC,GAAG,OAAO,GAAG,4CAA4C,CAAC,EAClF,EAAE,EACF,EAAE,CACH,EACD,OAAO,CAAC,EAAE;YACR,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SACrC,GACA,MAAM,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,GAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,GAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GACrC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,EACnC,EAAE,EACA,UAAU,GACV,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,GACxB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,GACvD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAClD,GACD,UAAU,CAAC;YACT,QAAQ,EAAE,QAAQ,CAAA;YAClB,OAAO,EAAE,OAAO,CAAA;YAChB,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;YAC5B,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;YAC9B,UAAU,EAAE,EAAE,CAAA;YACd,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;SACxC,CAAC,CAAA;QACJ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,EACzC,UAAU,EACN,CAAC,CACD,MAAM,EAAE,MAAM,CAAC,MAAM,CACnB,kBAAkB,CAAC,kBAAkB,EACrC,KAAK,CAAC,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,EAClC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CACxB,KACE,MAAM,CAAC,MAAM,CAChB,kBAAkB,CAAC,kBAAkB,EACrC,CAAC,EACD,CAAC,CACF,CAAC,GACA,CAAC,SAAS,SAAS,CAAC,GAAG,OAAO,GAAG,4CAA4C,CAAC,EAClF,OAAO,CAAC,EAAE;YACR,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SACrC,GACA,MAAM,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,GAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,GAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GACrC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,EACnC,KAAK,EACH,UAAU,GACV,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,GACvD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAClD,GACD,UAAU,CAAC;YACT,QAAQ,EAAE,QAAQ,CAAA;YAClB,OAAO,EAAE,OAAO,CAAA;YAChB,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;YAC5B,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;YAC9B,UAAU,EAAE,KAAK,CAAA;YACjB,aAAa,EAAE,KAAK,CAAA;SACrB,CAAC,CAAA;KACL,CAAA;IAED;;;OAGG;IACH,KAAY,EAAE,GAAG,CACf,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,KACzD,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAA;CAC1D;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GACf,UAAU;IACR,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC3C,GAAG,SAAS,KACZ,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAA+D,CAAA;AAEtG;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAuD,CAAA;AAEpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,eAAO,MAAM,UAAU,GAAI,EAAE,SAAS,MAAM,EAAE,MAAM,SAAS,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAC9F,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EACtC,UAAU;IACR,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,MAAM,EAAE,GAAG,SAAS,CAAA;CAChD,KACA,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,KAAK,EACH,IAAI,CAAC,SAAS,GACd,UAAU,GACV,UAAU,GACV,YAAY,GACZ,IAAI,GACJ,CAAC,GACD,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,GAC/C,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,CA6BjD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAC/F,UAAU,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC9B,UAAU;IACR,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACnE,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IACnC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CACnB,kBAAkB,CAAC,kBAAkB,EACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,aAAa,EACnF,KAAK,CAAC,KAAK,GAAG,iBAAiB,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAC9G,KACE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;CAClE,KACA,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EACf,UAAU,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,cAAc,CAAC,EAAE,UAAU,CAAC,CAmB3F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,GACvB,CAAC,EACD,CAAC,EACD,CAAC,SACG,UAAU,GACV,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,GACrB,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,GAC3B,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,GAClB,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,EAC5B,EAAE,EACF,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAE9D,UAAU,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC9B,UAAU;IACR,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAA;IACnE,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CACnB,kBAAkB,CAAC,kBAAkB,EACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,eAAe,CAAC,aAAa,EACnF,KAAK,CAAC,KAAK,GAAG,iBAAiB,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAC9G,KACE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;CAClE,KACA;IACD,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GAClC,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,GACvF,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CA6BtC,CAAA"}
@@ -9,11 +9,13 @@ import * as Effect from "effect/Effect";
9
9
  import * as FiberRef from "effect/FiberRef";
10
10
  import { compose, constant, dual, identity } from "effect/Function";
11
11
  import * as Layer from "effect/Layer";
12
+ import * as ManagedRuntime from "effect/ManagedRuntime";
12
13
  import * as Option from "effect/Option";
13
14
  import * as Scope from "effect/Scope";
14
15
  import * as Tracer from "effect/Tracer";
15
16
  import * as FindMyWay from "find-my-way-ts";
16
17
  import * as HttpApiBuilder from "./HttpApiBuilder.js";
18
+ import * as HttpApp from "./HttpApp.js";
17
19
  import * as HttpMiddleware from "./HttpMiddleware.js";
18
20
  import { RouteContext, RouteContextTypeId } from "./HttpRouter.js";
19
21
  import * as HttpServer from "./HttpServer.js";
@@ -502,9 +504,13 @@ export const addHttpApi = (api, options) => {
502
504
  const ApiMiddleware = middleware(HttpApiBuilder.buildMiddleware(api)).layer;
503
505
  return HttpApiBuilder.Router.unwrap(Effect.fnUntraced(function* (router_) {
504
506
  const router = yield* HttpRouter;
507
+ const context = yield* Effect.context();
505
508
  const routes = Arr.empty();
506
509
  for (const route of router_.routes) {
507
- routes.push(makeRoute(route));
510
+ routes.push(makeRoute({
511
+ ...route,
512
+ handler: Effect.provide(route.handler, context)
513
+ }));
508
514
  }
509
515
  yield* router.addAll(routes);
510
516
  if (options?.openapiPath) {
@@ -531,4 +537,35 @@ export const serve = (appLayer, options) => {
531
537
  return middleware ? HttpServer.serve(handler, middleware) : HttpServer.serve(handler);
532
538
  }).pipe(Layer.unwrapScoped, Layer.provide(appLayer), Layer.provide(RouterLayer), options?.disableListenLog ? identity : HttpServer.withLogAddress);
533
539
  };
540
+ /**
541
+ * @since 1.0.0
542
+ * @category Server
543
+ */
544
+ export const toWebHandler = (appLayer, options) => {
545
+ let middleware = options?.middleware;
546
+ if (options?.disableLogger !== true) {
547
+ middleware = middleware ? compose(middleware, HttpMiddleware.logger) : HttpMiddleware.logger;
548
+ }
549
+ const RouterLayer = options?.routerConfig ? Layer.provide(layer, Layer.succeed(RouterConfig, options.routerConfig)) : layer;
550
+ const runtime = ManagedRuntime.make(Layer.provideMerge(appLayer, RouterLayer), options?.memoMap);
551
+ let handlerCached;
552
+ const handlerPromise = Effect.gen(function* () {
553
+ const router = yield* HttpRouter;
554
+ const effect = router.asHttpEffect();
555
+ const rt = yield* runtime.runtimeEffect;
556
+ const handler = HttpApp.toWebHandlerRuntime(rt)(effect, middleware);
557
+ handlerCached = handler;
558
+ return handler;
559
+ }).pipe(runtime.runPromise);
560
+ function handler(request, context) {
561
+ if (handlerCached !== undefined) {
562
+ return handlerCached(request, context);
563
+ }
564
+ return handlerPromise.then(handler => handler(request, context));
565
+ }
566
+ return {
567
+ handler,
568
+ dispose: runtime.dispose
569
+ };
570
+ };
534
571
  //# sourceMappingURL=HttpLayerRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HttpLayerRouter.js","names":["HttpServerRequest","HttpServerResponse","Arr","Context","Effect","FiberRef","compose","constant","dual","identity","Layer","Option","Scope","Tracer","FindMyWay","HttpApiBuilder","HttpMiddleware","RouteContext","RouteContextTypeId","HttpServer","HttpServerError","OpenApi","TypeId","Symbol","for","HttpRouter","GenericTag","make","gen","router","RouterConfig","middleware","Set","addAll","routes","contextWith","context","getMiddleware","applyMiddleware","effect","i","length","route","makeRoute","handler","method","all","path","on","of","prefixed","prefix","newPrefix","prefixPath","map","prefixRoute","add","options","isEffect","flatMap","uninterruptible","some","addGlobalMiddleware","middleware_","sync","asHttpEffect","withFiberRuntime","fiber","contextMap","Map","currentContext","unsafeMap","request","get","key","result","find","url","undefined","fail","RouteNotFound","_tag","set","sliceRequestUrl","value","ParsedSearchParams","searchParams","params","span","ParentSpan","attribute","locally","interruptible","unsafeMake","size","fn","reverse","prefexLen","modify","slice","Reference","defaultValue","schemaJson","schemaNoBody","schemaParams","schemaPathParams","use","f","scopedDiscard","toAdd","layer","toHttpEffect","appLayer","scope","memoMap","CurrentMemoMap","buildWithMemoMap","provideMerge","RouteTypeId","none","removeTrailingSlash","endsWith","self","match","onNone","onSome","existingPrefix","MiddlewareTypeId","arguments","makeMiddleware","global","MiddlewareImpl","scopedContext","fnContextKey","succeedContext","middlewareId","layerFn","dependencies","constructor","contextKey","stack","depsContext","push","pipe","provide","combine","other","middlewareCache","WeakMap","arr","topLevel","empty","maxLength","startsWith","fromIterable","cors","disableLogger","withLoggerDisabled","addHttpApi","api","ApiMiddleware","buildMiddleware","Router","unwrap","fnUntraced","router_","openapiPath","spec","fromApi","succeed","unsafeJson","effectDiscard","serve","logger","RouterLayer","routerConfig","unwrapScoped","disableListenLog","withLogAddress"],"sources":["../../src/HttpLayerRouter.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,iBAAiB,MAAM,oCAAoC;AACvE,OAAO,KAAKC,kBAAkB,MAAM,qCAAqC;AACzE,OAAO,KAAKC,GAAG,MAAM,cAAc;AACnC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,SAASC,OAAO,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,QAAQ,QAAQ,iBAAiB;AACnE,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAGrD,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,SAASC,YAAY,EAAEC,kBAAkB,QAAQ,iBAAiB;AAClE,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAC7C,OAAO,KAAKC,eAAe,MAAM,sBAAsB;AACvD,OAAO,KAAKC,OAAO,MAAM,cAAc;AAEvC;;;;AAIA,OAAO,KAAKP,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAO,MAAMQ,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,6CAA6C,CAAC;AA2D9F;;;;AAIA,OAAO,MAAMC,UAAU,gBAAwCtB,OAAO,CAACuB,UAAU,CAC/E,kCAAkC,CACnC;AAED;;;;AAIA,OAAO,MAAMC,IAAI,gBAAGvB,MAAM,CAACwB,GAAG,CAAC,aAAS;EACtC,MAAMC,MAAM,GAAGf,SAAS,CAACa,IAAI,CAAoB,OAAOG,YAAY,CAAC;EACrE,MAAMC,UAAU,GAAG,IAAIC,GAAG,EAAiB;EAE3C,MAAMC,MAAM,GACVC,MAAc,IAOd9B,MAAM,CAAC+B,WAAW,CAAEC,OAA+B,IAAI;IACrD,MAAML,UAAU,GAAGM,aAAa,CAACD,OAAO,CAAC;IACzC,MAAME,eAAe,GAAIC,MAA4D,IAAI;MACvF,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGT,UAAU,CAACU,MAAM,EAAED,CAAC,EAAE,EAAE;QAC1CD,MAAM,GAAGR,UAAU,CAACS,CAAC,CAAC,CAACD,MAAM,CAAC;MAChC;MACA,OAAOA,MAAM;IACf,CAAC;IACD,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,MAAM,CAACO,MAAM,EAAED,CAAC,EAAE,EAAE;MACtC,MAAME,KAAK,GAAGX,UAAU,CAACU,MAAM,KAAK,CAAC,GAAGP,MAAM,CAACM,CAAC,CAAC,GAAGG,SAAS,CAAC;QAC5D,GAAGT,MAAM,CAACM,CAAC,CAAC;QACZI,OAAO,EAAEN,eAAe,CAACJ,MAAM,CAACM,CAAC,CAAC,CAACI,OAA+D;OACnG,CAAC;MACF,IAAIF,KAAK,CAACG,MAAM,KAAK,GAAG,EAAE;QACxBhB,MAAM,CAACiB,GAAG,CAACJ,KAAK,CAACK,IAAI,EAAEL,KAAY,CAAC;MACtC,CAAC,MAAM;QACLb,MAAM,CAACmB,EAAE,CAACN,KAAK,CAACG,MAAM,EAAEH,KAAK,CAACK,IAAI,EAAEL,KAAY,CAAC;MACnD;IACF;EACF,CAAC,CAAC;EAEJ,OAAOjB,UAAU,CAACwB,EAAE,CAAC;IACnB,CAAC3B,MAAM,GAAGA,MAAM;IAChB4B,QAAQA,CAAmBC,MAAc;MACvC,OAAO1B,UAAU,CAACwB,EAAE,CAAC;QACnB,GAAG,IAAI;QACPC,QAAQ,EAAGE,SAAiB,IAAK,IAAI,CAACF,QAAQ,CAACG,UAAU,CAACF,MAAM,EAAEC,SAAS,CAAC,CAAC;QAC7EnB,MAAM,EAAGC,MAAM,IAAKD,MAAM,CAACC,MAAM,CAACoB,GAAG,CAACC,WAAW,CAACJ,MAAM,CAAC,CAAC,CAAQ;QAClEK,GAAG,EAAEA,CAACX,MAAM,EAAEE,IAAI,EAAEH,OAAO,EAAEa,OAAO,KAClCxB,MAAM,CAAC,CACLU,SAAS,CAAC;UACRE,MAAM;UACNE,IAAI,EAAEM,UAAU,CAACN,IAAI,EAAEI,MAAM,CAAc;UAC3CP,OAAO,EAAExC,MAAM,CAACsD,QAAQ,CAACd,OAAO,CAAC,GAC7BA,OAAO,GACPxC,MAAM,CAACuD,OAAO,CAAC3D,iBAAiB,CAACA,iBAAiB,EAAE4C,OAAO,CAAC;UAChEgB,eAAe,EAAEH,OAAO,EAAEG,eAAe,IAAI,KAAK;UAClDT,MAAM,EAAExC,MAAM,CAACkD,IAAI,CAACV,MAAM;SAC3B,CAAC,CACH;OACJ,CAAC;IACJ,CAAC;IACDlB,MAAM;IACNuB,GAAG,EAAEA,CAACX,MAAM,EAAEE,IAAI,EAAEH,OAAO,EAAEa,OAAO,KAAKxB,MAAM,CAAC,CAACS,KAAK,CAACG,MAAM,EAAEE,IAAI,EAAEH,OAAO,EAAEa,OAAO,CAAC,CAAC,CAAC;IACxFK,mBAAmB,EAAGC,WAAW,IAC/B3D,MAAM,CAAC4D,IAAI,CAAC,MAAK;MACfjC,UAAU,CAACyB,GAAG,CAACO,WAAkB,CAAC;IACpC,CAAC,CAAC;IACJE,YAAYA,CAAA;MACV,IAAIrB,OAAO,GAAGxC,MAAM,CAAC8D,gBAAgB,CAAkDC,KAAK,IAAI;QAC9F,MAAMC,UAAU,GAAG,IAAIC,GAAG,CAACF,KAAK,CAACG,cAAc,CAACC,SAAS,CAAC;QAC1D,MAAMC,OAAO,GAAGJ,UAAU,CAACK,GAAG,CAACzE,iBAAiB,CAACA,iBAAiB,CAAC0E,GAAG,CAAwC;QAC9G,IAAIC,MAAM,GAAG9C,MAAM,CAAC+C,IAAI,CAACJ,OAAO,CAAC3B,MAAM,EAAE2B,OAAO,CAACK,GAAG,CAAC;QACrD,IAAIF,MAAM,KAAKG,SAAS,IAAIN,OAAO,CAAC3B,MAAM,KAAK,MAAM,EAAE;UACrD8B,MAAM,GAAG9C,MAAM,CAAC+C,IAAI,CAAC,KAAK,EAAEJ,OAAO,CAACK,GAAG,CAAC;QAC1C;QACA,IAAIF,MAAM,KAAKG,SAAS,EAAE;UACxB,OAAO1E,MAAM,CAAC2E,IAAI,CAAC,IAAI3D,eAAe,CAAC4D,aAAa,CAAC;YAAER;UAAO,CAAE,CAAC,CAAC;QACpE;QACA,MAAM9B,KAAK,GAAGiC,MAAM,CAAC/B,OAAO;QAC5B,IAAIF,KAAK,CAACS,MAAM,CAAC8B,IAAI,KAAK,MAAM,EAAE;UAChCb,UAAU,CAACc,GAAG,CAAClF,iBAAiB,CAACA,iBAAiB,CAAC0E,GAAG,EAAES,eAAe,CAACX,OAAO,EAAE9B,KAAK,CAACS,MAAM,CAACiC,KAAK,CAAC,CAAC;QACvG;QACAhB,UAAU,CAACc,GAAG,CAAClF,iBAAiB,CAACqF,kBAAkB,CAACX,GAAG,EAAEC,MAAM,CAACW,YAAY,CAAC;QAC7ElB,UAAU,CAACc,GAAG,CAACjE,YAAY,CAACyD,GAAG,EAAE;UAC/B,CAACxD,kBAAkB,GAAGA,kBAAkB;UACxCwB,KAAK;UACL6C,MAAM,EAAEZ,MAAM,CAACY;SAChB,CAAC;QAEF,MAAMC,IAAI,GAAGpB,UAAU,CAACK,GAAG,CAAC5D,MAAM,CAAC4E,UAAU,CAACf,GAAG,CAA4B;QAC7E,IAAIc,IAAI,IAAIA,IAAI,CAACP,IAAI,KAAK,MAAM,EAAE;UAChCO,IAAI,CAACE,SAAS,CAAC,YAAY,EAAEhD,KAAK,CAACK,IAAI,CAAC;QAC1C;QACA,OAAO3C,MAAM,CAACuF,OAAO,CAClBjD,KAAK,CAACkB,eAAe,GACpBlB,KAAK,CAACE,OAAO,GACbxC,MAAM,CAACwF,aAAa,CAAClD,KAAK,CAACE,OAAO,CAAC,EAIrCvC,QAAQ,CAACiE,cAAc,EACvBnE,OAAO,CAAC0F,UAAU,CAACzB,UAAU,CAAC,CAC/B;MACH,CAAC,CAAC;MACF,IAAIrC,UAAU,CAAC+D,IAAI,KAAK,CAAC,EAAE,OAAOlD,OAAO;MACzC,KAAK,MAAMmD,EAAE,IAAI7F,GAAG,CAAC8F,OAAO,CAACjE,UAAU,CAAC,EAAE;QACxCa,OAAO,GAAGmD,EAAE,CAACnD,OAAc,CAAC;MAC9B;MACA,OAAOA,OAAO;IAChB;GACD,CAAC;AACJ,CAAC,CAAC;AAEF,SAASuC,eAAeA,CAACX,OAA4C,EAAErB,MAAc;EACnF,MAAM8C,SAAS,GAAG9C,MAAM,CAACV,MAAM;EAC/B,OAAO+B,OAAO,CAAC0B,MAAM,CAAC;IAAErB,GAAG,EAAEL,OAAO,CAACK,GAAG,CAACpC,MAAM,IAAIwD,SAAS,GAAG,GAAG,GAAGzB,OAAO,CAACK,GAAG,CAACsB,KAAK,CAACF,SAAS;EAAC,CAAE,CAAC;AACtG;AAEA;;;;AAIA,OAAM,MAAOnE,YAAa,sBAAQ3B,OAAO,CAACiG,SAAS,EAAgB,CAAC,+CAA+C,EAAE;EACnHC,YAAY,eAAE9F,QAAQ,CAAkC,EAAE;CAC3D,CAAC;AAEF;AACE;;;;AAIAgF,MAAM;AACN;;;;AAIAtE,YAAY;AACZ;;;;AAIAqF,UAAU;AACV;;;;AAIAC,YAAY;AACZ;;;;AAIAC,YAAY;AACZ;;;;AAIAC,gBAAgB,QACX,iBAAiB;AAExB;;;;;;;;;;;;;;;;;;AAkBA,OAAO,MAAMC,GAAG,GACdC,CAAiD,IACejG,KAAK,CAACkG,aAAa,CAACxG,MAAM,CAACuD,OAAO,CAAClC,UAAU,EAAEkF,CAAC,CAAC,CAAC;AAEpH;;;;;;;;;;;;;AAaA,OAAO,MAAMnD,GAAG,GAAGA,CACjBX,MAAqE,EACrEE,IAAe,EACfH,OAEkH,EAClHa,OAEC,KAEDiD,GAAG,CAAE7E,MAAM,IAAKA,MAAM,CAAC2B,GAAG,CAACX,MAAM,EAAEE,IAAI,EAAEH,OAAO,EAAEa,OAAO,CAAC,CAAC;AAE7D;;;;;;;;;;;;;;;AAeA,OAAO,MAAMxB,MAAM,GAAGA,CACpBC,MAA8C,EAC9CuB,OAEC,KASD/C,KAAK,CAACkG,aAAa,CAACxG,MAAM,CAACwB,GAAG,CAAC,aAAS;EACtC,MAAMiF,KAAK,GAAGzG,MAAM,CAACsD,QAAQ,CAACxB,MAAM,CAAC,GAAG,OAAOA,MAAM,GAAGA,MAAM;EAC9D,IAAIL,MAAM,GAAG,OAAOJ,UAAU;EAC9B,IAAIgC,OAAO,EAAEN,MAAM,EAAE;IACnBtB,MAAM,GAAGA,MAAM,CAACqB,QAAQ,CAACO,OAAO,CAACN,MAAM,CAAC;EAC1C;EACA,OAAOtB,MAAM,CAACI,MAAM,CAAC4E,KAAK,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEL;;;;AAIA,OAAO,MAAMC,KAAK,gBAA4BpG,KAAK,CAAC6B,MAAM,CAACd,UAAU,EAAEE,IAAI,CAAC;AAE5E;;;;AAIA,OAAO,MAAMoF,YAAY,GACvBC,QAA8B,IAU9B5G,MAAM,CAACwB,GAAG,CAAC,aAAS;EAClB,MAAMqF,KAAK,GAAG,OAAO7G,MAAM,CAAC6G,KAAK;EACjC,MAAMC,OAAO,GAAG,OAAOxG,KAAK,CAACyG,cAAc;EAC3C,MAAM/E,OAAO,GAAG,OAAO1B,KAAK,CAAC0G,gBAAgB,CAC3C1G,KAAK,CAAC2G,YAAY,CAACL,QAAQ,EAAEF,KAAK,CAAC,EACnCI,OAAO,EACPD,KAAK,CACN;EACD,MAAMpF,MAAM,GAAG1B,OAAO,CAACsE,GAAG,CAACrC,OAAO,EAAEX,UAAU,CAAC;EAC/C,OAAOI,MAAM,CAACoC,YAAY,EAAE;AAC9B,CAAC,CAAQ;AAEX;;;;AAIA,OAAO,MAAMqD,WAAW,gBAAkB/F,MAAM,CAACC,GAAG,CAAC,wCAAwC,CAAC;AAuC9F,MAAMmB,SAAS,GAAUc,OAMxB,KACG;EACA,GAAGA,OAAO;EACVG,eAAe,EAAEH,OAAO,CAACG,eAAe,IAAI,KAAK;EACjDT,MAAM,EAAEM,OAAO,CAACN,MAAM,IAAIxC,MAAM,CAAC4G,IAAI,EAAE;EACvC,CAACD,WAAW,GAAGA;CAChB,CAAoC;AAEvC;;;;AAIA,OAAO,MAAM5E,KAAK,GAAGA,CACnBG,MAAqE,EACrEE,IAAe,EACfH,OAEkH,EAClHa,OAEC,KAEDd,SAAS,CAAC;EACR,GAAGc,OAAO;EACVZ,MAAM;EACNE,IAAI;EACJH,OAAO,EAAExC,MAAM,CAACsD,QAAQ,CAACd,OAAO,CAAC,GAAGA,OAAO,GAAGxC,MAAM,CAACuD,OAAO,CAAC3D,iBAAiB,CAACA,iBAAiB,EAAE4C,OAAO,CAAC;EAC1GgB,eAAe,EAAEH,OAAO,EAAEG,eAAe,IAAI;CAC9C,CAAC;AAQJ,MAAM4D,mBAAmB,GACvBzE,IAAe,IACAA,IAAI,CAAC0E,QAAQ,CAAC,GAAG,CAAC,GAAG1E,IAAI,CAACoD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGpD,IAAY;AAEtE;;;;AAIA,OAAO,MAAMM,UAAU,gBAWnB7C,IAAI,CAAC,CAAC,EAAE,CAACkH,IAAY,EAAEvE,MAAc,KAAI;EAC3CA,MAAM,GAAGqE,mBAAmB,CAACrE,MAAmB,CAAC;EACjD,OAAOuE,IAAI,KAAK,GAAG,GAAGvE,MAAM,GAAGA,MAAM,GAAGuE,IAAI;AAC9C,CAAC,CAAC;AAEF;;;;AAIA,OAAO,MAAMnE,WAAW,gBAWpB/C,IAAI,CAAC,CAAC,EAAE,CAAOkH,IAAiB,EAAEvE,MAAc,KAClDR,SAAS,CAAC;EACR,GAAG+E,IAAI;EACP3E,IAAI,EAAEM,UAAU,CAACqE,IAAI,CAAC3E,IAAI,EAAEI,MAAM,CAAc;EAChDA,MAAM,EAAExC,MAAM,CAACgH,KAAK,CAACD,IAAI,CAACvE,MAAM,EAAE;IAChCyE,MAAM,EAAEA,CAAA,KAAMjH,MAAM,CAACkD,IAAI,CAACV,MAAgB,CAAC;IAC3C0E,MAAM,EAAGC,cAAc,IAAKnH,MAAM,CAACkD,IAAI,CAACR,UAAU,CAACyE,cAAc,EAAE3E,MAAM,CAAW;GACrF;CACF,CAAC,CAAC;AA8DL;;;;AAIA,OAAO,MAAM4E,gBAAgB,gBAAkBxG,MAAM,CAACC,GAAG,CAAC,6CAA6C,CAAC;AA+DxG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DA,OAAO,MAAMO,UAAU,GAUhB,SAAAA,CAAA;EACH,IAAIiG,SAAS,CAACvF,MAAM,KAAK,CAAC,EAAE;IAC1B,OAAOwF,cAAqB;EAC9B;EACA,OAAOA,cAAc,CAACD,SAAS,CAAC,CAAC,CAAC,EAAEA,SAAS,CAAC,CAAC,CAAC,CAAQ;AAC1D,CAAC;AAEH,MAAMC,cAAc,GAAGA,CAAClG,UAAe,EAAE0B,OAExC,KACCA,OAAO,EAAEyE,MAAM,GACbxH,KAAK,CAACkG,aAAa,CAACxG,MAAM,CAACwB,GAAG,CAAC,aAAS;EACtC,MAAMC,MAAM,GAAG,OAAOJ,UAAU;EAChC,MAAMsE,EAAE,GAAG3F,MAAM,CAACsD,QAAQ,CAAC3B,UAAU,CAAC,GAAG,OAAOA,UAAU,GAAGA,UAAU;EACvE,OAAOF,MAAM,CAACiC,mBAAmB,CAACiC,EAAE,CAAC;AACvC,CAAC,CAAC,CAAC,GACD,IAAIoC,cAAc,CAClB/H,MAAM,CAACsD,QAAQ,CAAC3B,UAAU,CAAC,GACzBrB,KAAK,CAAC0H,aAAa,CAAChI,MAAM,CAACkD,GAAG,CAACvB,UAAU,EAAGgE,EAAE,IAAK5F,OAAO,CAAC0F,UAAU,CAAC,IAAIxB,GAAG,CAAC,CAAC,CAACgE,YAAY,EAAEtC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACtGrF,KAAK,CAAC4H,cAAc,CAACnI,OAAO,CAAC0F,UAAU,CAAC,IAAIxB,GAAG,CAAC,CAAC,CAACgE,YAAY,EAAEtG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAQ,CACzF;AAEL,IAAIwG,YAAY,GAAG,CAAC;AACpB,MAAMF,YAAY,GAAG,+CAA+C;AAEpE,MAAMF,cAAc;EAaPK,OAAA;EACAC,YAAA;EAJF,CAACV,gBAAgB,IAAY,EAAS;EAE/CW,YACWF,OAA2B,EAC3BC,YAAyC;IADzC,KAAAD,OAAO,GAAPA,OAAO;IACP,KAAAC,YAAY,GAAZA,YAAY;IAErB,MAAME,UAAU,GAAG,+CAA+C,EAAEJ,YAAY,EAAW;IAC3F,IAAI,CAACzB,KAAK,GAAGpG,KAAK,CAAC0H,aAAa,CAAChI,MAAM,CAACwB,GAAG,CAAC,IAAI,EAAE,aAAS;MACzD,MAAMQ,OAAO,GAAG,OAAOhC,MAAM,CAACgC,OAAO,EAAe;MACpD,MAAMwG,KAAK,GAAG,CAACxG,OAAO,CAACmC,SAAS,CAACE,GAAG,CAAC4D,YAAY,CAAC,CAAC;MACnD,IAAI,IAAI,CAACI,YAAY,EAAE;QACrB,MAAMvB,OAAO,GAAG,OAAOxG,KAAK,CAACyG,cAAc;QAC3C,MAAMF,KAAK,GAAG9G,OAAO,CAACsE,GAAG,CAACrC,OAAO,EAAExB,KAAK,CAACA,KAAK,CAAC;QAC/C,MAAMiI,WAAW,GAAG,OAAOnI,KAAK,CAAC0G,gBAAgB,CAAC,IAAI,CAACqB,YAAY,EAAEvB,OAAO,EAAED,KAAK,CAAC;QACpF;QACA2B,KAAK,CAACE,IAAI,CAAC,GAAGzG,aAAa,CAACwG,WAAW,CAAC,CAAC;MAC3C;MACA,OAAO1I,OAAO,CAAC0F,UAAU,CAAQ,IAAIxB,GAAG,CAAC,CAAC,CAACsE,UAAU,EAAEC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC,CAACG,IAAI,CAACrI,KAAK,CAACsI,OAAO,CAAC,IAAI,CAACR,OAAO,CAAC,CAAC;EACvC;EAEA1B,KAAK;EAELmC,OAAOA,CASLC,KAA0B;IAC1B,OAAO,IAAIf,cAAc,CACvB,IAAI,CAACK,OAAO,EACZ,IAAI,CAACC,YAAY,GAAG/H,KAAK,CAAC2G,YAAY,CAAC,IAAI,CAACoB,YAAY,EAAES,KAAK,CAACpC,KAAY,CAAC,GAAGoC,KAAK,CAACpC,KAAY,CAC5F;EACV;;AAGF,MAAMqC,eAAe,gBAAG,IAAIC,OAAO,EAA+B;AAClE,MAAM/G,aAAa,GAAID,OAA+B,IAA0B;EAC9E,IAAIiH,GAAG,GAAGF,eAAe,CAAC1E,GAAG,CAACrC,OAAO,CAAC;EACtC,IAAIiH,GAAG,EAAE,OAAOA,GAAG;EACnB,MAAMC,QAAQ,GAAGpJ,GAAG,CAACqJ,KAAK,EAAwB;EAClD,IAAIC,SAAS,GAAG,CAAC;EACjB,KAAK,MAAM,CAAC9E,GAAG,EAAEU,KAAK,CAAC,IAAIhD,OAAO,CAACmC,SAAS,EAAE;IAC5C,IAAIG,GAAG,CAAC+E,UAAU,CAAC,8CAA8C,CAAC,EAAE;MAClEH,QAAQ,CAACR,IAAI,CAAC1D,KAAK,CAAC;MACpB,IAAIA,KAAK,CAAC3C,MAAM,GAAG+G,SAAS,EAAE;QAC5BA,SAAS,GAAGpE,KAAK,CAAC3C,MAAM;MAC1B;IACF;EACF;EACA,IAAI6G,QAAQ,CAAC7G,MAAM,KAAK,CAAC,EAAE;IACzB4G,GAAG,GAAG,EAAE;EACV,CAAC,MAAM;IACL,MAAMtH,UAAU,GAAG,IAAIC,GAAG,EAAiB;IAC3C,KAAK,IAAIQ,CAAC,GAAGgH,SAAS,GAAG,CAAC,EAAEhH,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;MACvC,KAAK,MAAM6G,GAAG,IAAIC,QAAQ,EAAE;QAC1B,IAAI9G,CAAC,GAAG6G,GAAG,CAAC5G,MAAM,EAAE;UAClBV,UAAU,CAACyB,GAAG,CAAC6F,GAAG,CAAC7G,CAAC,CAAC,CAAC;QACxB;MACF;IACF;IACA6G,GAAG,GAAGnJ,GAAG,CAACwJ,YAAY,CAAC3H,UAAU,CAAC,CAACiE,OAAO,EAAE;EAC9C;EACAmD,eAAe,CAACjE,GAAG,CAAC9C,OAAO,EAAEiH,GAAG,CAAC;EACjC,OAAOA,GAAG;AACZ,CAAC;AAkGD;;;;;;AAMA,OAAO,MAAMM,IAAI,GACflG,OAOa,IAC6B1B,UAAU,CAACf,cAAc,CAAC2I,IAAI,CAAClG,OAAO,CAAC,EAAE;EAAEyE,MAAM,EAAE;AAAI,CAAE,CAAC;AAEtG;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAM0B,aAAa,GAAuB,aAAA7H,UAAU,CAACf,cAAc,CAAC6I,kBAAkB,CAAC,CAAC/C,KAAK;AAEpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DA,OAAO,MAAMgD,UAAU,GAAGA,CACxBC,GAAsC,EACtCtG,OAEC,KAKC;EACF,MAAMuG,aAAa,GAAGjI,UAAU,CAAChB,cAAc,CAACkJ,eAAe,CAACF,GAAG,CAAC,CAAC,CAACjD,KAA2B;EACjG,OAAO/F,cAAc,CAACmJ,MAAM,CAACC,MAAM,CAAC/J,MAAM,CAACgK,UAAU,CAAC,WAAUC,OAAO;IACrE,MAAMxI,MAAM,GAAG,OAAOJ,UAAU;IAChC,MAAMS,MAAM,GAAGhC,GAAG,CAACqJ,KAAK,EAAmB;IAC3C,KAAK,MAAM7G,KAAK,IAAI2H,OAAO,CAACnI,MAAM,EAAE;MAClCA,MAAM,CAAC4G,IAAI,CAACnG,SAAS,CAACD,KAAY,CAAC,CAAC;IACtC;IAEA,OAAQb,MAAM,CAACI,MAAM,CAACC,MAAM,CAAyB;IAErD,IAAIuB,OAAO,EAAE6G,WAAW,EAAE;MACxB,MAAMC,IAAI,GAAGlJ,OAAO,CAACmJ,OAAO,CAACT,GAAG,CAAC;MACjC,OAAOlI,MAAM,CAAC2B,GAAG,CAAC,KAAK,EAAEC,OAAO,CAAC6G,WAAW,EAAElK,MAAM,CAACqK,OAAO,CAACxK,kBAAkB,CAACyK,UAAU,CAACH,IAAI,CAAC,CAAC,CAAC;IACpG;EACF,CAAC,EAAE7J,KAAK,CAACiK,aAAa,CAAC,CAAC,CAAC5B,IAAI,CAC3BrI,KAAK,CAACsI,OAAO,CAACgB,aAAa,CAAC,CAC7B;AACH,CAAC;AAED;;;;;;AAMA,OAAO,MAAMY,KAAK,GAAGA,CACnB5D,QAA8B,EAC9BvD,OAsBC,KAKC;EACF,IAAI1B,UAAU,GAAQ0B,OAAO,EAAE1B,UAAU;EACzC,IAAI0B,OAAO,EAAEmG,aAAa,KAAK,IAAI,EAAE;IACnC7H,UAAU,GAAGA,UAAU,GAAGzB,OAAO,CAACyB,UAAU,EAAEf,cAAc,CAAC6J,MAAM,CAAC,GAAG7J,cAAc,CAAC6J,MAAM;EAC9F;EACA,MAAMC,WAAW,GAAGrH,OAAO,EAAEsH,YAAY,GACrCrK,KAAK,CAACsI,OAAO,CAAClC,KAAK,EAAEpG,KAAK,CAAC+J,OAAO,CAAC3I,YAAY,EAAE2B,OAAO,CAACsH,YAAY,CAAC,CAAC,GACvEjE,KAAK;EACT,OAAO1G,MAAM,CAACwB,GAAG,CAAC,aAAS;IACzB,MAAMC,MAAM,GAAG,OAAOJ,UAAU;IAChC,MAAMmB,OAAO,GAAGf,MAAM,CAACoC,YAAY,EAAE;IACrC,OAAOlC,UAAU,GAAGZ,UAAU,CAACyJ,KAAK,CAAChI,OAAO,EAAEb,UAAU,CAAC,GAAGZ,UAAU,CAACyJ,KAAK,CAAChI,OAAO,CAAC;EACvF,CAAC,CAAC,CAACmG,IAAI,CACLrI,KAAK,CAACsK,YAAY,EAClBtK,KAAK,CAACsI,OAAO,CAAChC,QAAQ,CAAC,EACvBtG,KAAK,CAACsI,OAAO,CAAC8B,WAAW,CAAC,EAC1BrH,OAAO,EAAEwH,gBAAgB,GAAGxK,QAAQ,GAAGU,UAAU,CAAC+J,cAAc,CAC1D;AACV,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"HttpLayerRouter.js","names":["HttpServerRequest","HttpServerResponse","Arr","Context","Effect","FiberRef","compose","constant","dual","identity","Layer","ManagedRuntime","Option","Scope","Tracer","FindMyWay","HttpApiBuilder","HttpApp","HttpMiddleware","RouteContext","RouteContextTypeId","HttpServer","HttpServerError","OpenApi","TypeId","Symbol","for","HttpRouter","GenericTag","make","gen","router","RouterConfig","middleware","Set","addAll","routes","contextWith","context","getMiddleware","applyMiddleware","effect","i","length","route","makeRoute","handler","method","all","path","on","of","prefixed","prefix","newPrefix","prefixPath","map","prefixRoute","add","options","isEffect","flatMap","uninterruptible","some","addGlobalMiddleware","middleware_","sync","asHttpEffect","withFiberRuntime","fiber","contextMap","Map","currentContext","unsafeMap","request","get","key","result","find","url","undefined","fail","RouteNotFound","_tag","set","sliceRequestUrl","value","ParsedSearchParams","searchParams","params","span","ParentSpan","attribute","locally","interruptible","unsafeMake","size","fn","reverse","prefexLen","modify","slice","Reference","defaultValue","schemaJson","schemaNoBody","schemaParams","schemaPathParams","use","f","scopedDiscard","toAdd","layer","toHttpEffect","appLayer","scope","memoMap","CurrentMemoMap","buildWithMemoMap","provideMerge","RouteTypeId","none","removeTrailingSlash","endsWith","self","match","onNone","onSome","existingPrefix","MiddlewareTypeId","arguments","makeMiddleware","global","MiddlewareImpl","scopedContext","fnContextKey","succeedContext","middlewareId","layerFn","dependencies","constructor","contextKey","stack","depsContext","push","pipe","provide","combine","other","middlewareCache","WeakMap","arr","topLevel","empty","maxLength","startsWith","fromIterable","cors","disableLogger","withLoggerDisabled","addHttpApi","api","ApiMiddleware","buildMiddleware","Router","unwrap","fnUntraced","router_","openapiPath","spec","fromApi","succeed","unsafeJson","effectDiscard","serve","logger","RouterLayer","routerConfig","unwrapScoped","disableListenLog","withLogAddress","toWebHandler","runtime","handlerCached","handlerPromise","rt","runtimeEffect","toWebHandlerRuntime","runPromise","then","dispose"],"sources":["../../src/HttpLayerRouter.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.87.8",
3
+ "version": "0.87.9",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -9,20 +9,26 @@ import * as Effect from "effect/Effect"
9
9
  import * as FiberRef from "effect/FiberRef"
10
10
  import { compose, constant, dual, identity } from "effect/Function"
11
11
  import * as Layer from "effect/Layer"
12
+ import * as ManagedRuntime from "effect/ManagedRuntime"
12
13
  import * as Option from "effect/Option"
13
14
  import * as Scope from "effect/Scope"
14
15
  import * as Tracer from "effect/Tracer"
15
16
  import type * as Types from "effect/Types"
16
17
  import * as FindMyWay from "find-my-way-ts"
18
+ import type * as Etag from "./Etag.js"
19
+ import type { FileSystem } from "./FileSystem.js"
17
20
  import type * as HttpApi from "./HttpApi.js"
18
21
  import * as HttpApiBuilder from "./HttpApiBuilder.js"
19
22
  import type * as HttpApiGroup from "./HttpApiGroup.js"
23
+ import * as HttpApp from "./HttpApp.js"
20
24
  import type * as HttpMethod from "./HttpMethod.js"
21
25
  import * as HttpMiddleware from "./HttpMiddleware.js"
26
+ import type { HttpPlatform } from "./HttpPlatform.js"
22
27
  import { RouteContext, RouteContextTypeId } from "./HttpRouter.js"
23
28
  import * as HttpServer from "./HttpServer.js"
24
29
  import * as HttpServerError from "./HttpServerError.js"
25
30
  import * as OpenApi from "./OpenApi.js"
31
+ import type { Path } from "./Path.js"
26
32
 
27
33
  /**
28
34
  * @since 1.0.0
@@ -1010,14 +1016,31 @@ export const addHttpApi = <Id extends string, Groups extends HttpApiGroup.HttpAp
1010
1016
  ): Layer.Layer<
1011
1017
  never,
1012
1018
  never,
1013
- HttpRouter | HttpApiGroup.HttpApiGroup.ToService<Id, Groups> | R | HttpApiGroup.HttpApiGroup.ErrorContext<Groups>
1019
+ | Etag.Generator
1020
+ | HttpRouter
1021
+ | FileSystem
1022
+ | HttpPlatform
1023
+ | Path
1024
+ | R
1025
+ | HttpApiGroup.HttpApiGroup.ToService<Id, Groups>
1026
+ | HttpApiGroup.HttpApiGroup.ErrorContext<Groups>
1014
1027
  > => {
1015
1028
  const ApiMiddleware = middleware(HttpApiBuilder.buildMiddleware(api)).layer as Layer.Layer<never>
1016
1029
  return HttpApiBuilder.Router.unwrap(Effect.fnUntraced(function*(router_) {
1017
1030
  const router = yield* HttpRouter
1031
+ const context = yield* Effect.context<
1032
+ | Etag.Generator
1033
+ | HttpRouter
1034
+ | FileSystem
1035
+ | HttpPlatform
1036
+ | Path
1037
+ >()
1018
1038
  const routes = Arr.empty<Route<any, any>>()
1019
1039
  for (const route of router_.routes) {
1020
- routes.push(makeRoute(route as any))
1040
+ routes.push(makeRoute({
1041
+ ...route as any,
1042
+ handler: Effect.provide(route.handler, context)
1043
+ }))
1021
1044
  }
1022
1045
 
1023
1046
  yield* (router.addAll(routes) as Effect.Effect<void>)
@@ -1065,7 +1088,7 @@ export const serve = <A, E, R, HE, HR = Type.Only<"Requires", R> | Type.Only<"Gl
1065
1088
  ): Layer.Layer<
1066
1089
  never,
1067
1090
  Type.Without<E>,
1068
- HttpServer.HttpServer | Exclude<Type.Without<R> | Exclude<HR, Provided>, HttpRouter>
1091
+ HttpServer.HttpServer | Exclude<Type.Without<R> | Exclude<HR, GlobalProvided>, HttpRouter>
1069
1092
  > => {
1070
1093
  let middleware: any = options?.middleware
1071
1094
  if (options?.disableLogger !== true) {
@@ -1085,3 +1108,78 @@ export const serve = <A, E, R, HE, HR = Type.Only<"Requires", R> | Type.Only<"Gl
1085
1108
  options?.disableListenLog ? identity : HttpServer.withLogAddress
1086
1109
  ) as any
1087
1110
  }
1111
+
1112
+ /**
1113
+ * @since 1.0.0
1114
+ * @category Server
1115
+ */
1116
+ export const toWebHandler = <
1117
+ A,
1118
+ E,
1119
+ R extends
1120
+ | HttpRouter
1121
+ | Type<"Requires", any>
1122
+ | Type<"GlobalRequires", any>
1123
+ | Type<"Error", any>
1124
+ | Type<"GlobalError", any>,
1125
+ HE,
1126
+ HR = Type.Only<"Requires", R> | Type.Only<"GlobalRequires", R>
1127
+ >(
1128
+ appLayer: Layer.Layer<A, E, R>,
1129
+ options?: {
1130
+ readonly memoMap?: Layer.MemoMap | undefined
1131
+ readonly routerConfig?: Partial<FindMyWay.RouterConfig> | undefined
1132
+ readonly disableLogger?: boolean | undefined
1133
+ /**
1134
+ * Middleware to apply to the HTTP server.
1135
+ *
1136
+ * NOTE: This middleware is applied to the entire HTTP server chain,
1137
+ * including the sending of the response. This means that modifications
1138
+ * to the response **WILL NOT** be reflected in the final response sent to the
1139
+ * client.
1140
+ *
1141
+ * Use HttpLayerRouter.middleware to create middleware that can modify the
1142
+ * response.
1143
+ */
1144
+ readonly middleware?: (
1145
+ effect: Effect.Effect<
1146
+ HttpServerResponse.HttpServerResponse,
1147
+ Type.Only<"Error", R> | Type.Only<"GlobalError", R> | HttpServerError.RouteNotFound,
1148
+ Scope.Scope | HttpServerRequest.HttpServerRequest | Type.Only<"Requires", R> | Type.Only<"GlobalRequires", R>
1149
+ >
1150
+ ) => Effect.Effect<HttpServerResponse.HttpServerResponse, HE, HR>
1151
+ }
1152
+ ): {
1153
+ readonly handler: [HR] extends [never]
1154
+ ? ((request: Request, context?: Context.Context<never> | undefined) => Promise<Response>)
1155
+ : ((request: Request, context: Context.Context<HR>) => Promise<Response>)
1156
+ readonly dispose: () => Promise<void>
1157
+ } => {
1158
+ let middleware: any = options?.middleware
1159
+ if (options?.disableLogger !== true) {
1160
+ middleware = middleware ? compose(middleware, HttpMiddleware.logger) : HttpMiddleware.logger
1161
+ }
1162
+ const RouterLayer = options?.routerConfig
1163
+ ? Layer.provide(layer, Layer.succeed(RouterConfig, options.routerConfig))
1164
+ : layer
1165
+ const runtime = ManagedRuntime.make(
1166
+ Layer.provideMerge(appLayer, RouterLayer) as any,
1167
+ options?.memoMap
1168
+ )
1169
+ let handlerCached: ((request: Request, context?: Context.Context<never> | undefined) => Promise<Response>) | undefined
1170
+ const handlerPromise = Effect.gen(function*() {
1171
+ const router = yield* HttpRouter
1172
+ const effect = router.asHttpEffect()
1173
+ const rt = yield* runtime.runtimeEffect
1174
+ const handler = HttpApp.toWebHandlerRuntime(rt)(effect, middleware)
1175
+ handlerCached = handler
1176
+ return handler
1177
+ }).pipe(runtime.runPromise)
1178
+ function handler(request: Request, context?: Context.Context<never> | undefined): Promise<Response> {
1179
+ if (handlerCached !== undefined) {
1180
+ return handlerCached(request, context)
1181
+ }
1182
+ return handlerPromise.then((handler) => handler(request, context))
1183
+ }
1184
+ return { handler, dispose: runtime.dispose } as const
1185
+ }