@effect/platform 0.35.0 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.serve = exports.make = exports.TypeId = exports.Server = void 0;
6
+ exports.serveEffect = exports.serve = exports.make = exports.TypeId = exports.Server = void 0;
7
7
  var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../internal/http/server.js"));
8
8
  function _getRequireWildcardCache(e) {
9
9
  if ("function" != typeof WeakMap) return null;
@@ -50,4 +50,9 @@ const make = exports.make = internal.make;
50
50
  * @category accessors
51
51
  */
52
52
  const serve = exports.serve = internal.serve;
53
+ /**
54
+ * @since 1.0.0
55
+ * @category accessors
56
+ */
57
+ const serveEffect = exports.serveEffect = internal.serveEffect;
53
58
  //# sourceMappingURL=Server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Server.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Server","serverTag","make","serve"],"sources":["../../../src/Http/Server.ts"],"sourcesContent":[null],"mappings":";;;;;;AAMA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAsD,SAAAC,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAMtD;;;;AAIO,MAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBxB,QAAQ,CAACwB,MAAM;AAiEpD;;;;AAIO,MAAME,MAAM,GAAAD,OAAA,CAAAC,MAAA,GAAgC1B,QAAQ,CAAC2B,SAAS;AAErE;;;;AAIO,MAAMC,IAAI,GAAAH,OAAA,CAAAG,IAAA,GAQH5B,QAAQ,CAAC4B,IAAI;AAE3B;;;;AAIO,MAAMC,KAAK,GAAAJ,OAAA,CAAAI,KAAA,GA4Bd7B,QAAQ,CAAC6B,KAAK"}
1
+ {"version":3,"file":"Server.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Server","serverTag","make","serve","serveEffect"],"sources":["../../../src/Http/Server.ts"],"sourcesContent":[null],"mappings":";;;;;;AAOA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAsD,SAAAC,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAKtD;;;;AAIO,MAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBxB,QAAQ,CAACwB,MAAM;AAiEpD;;;;AAIO,MAAME,MAAM,GAAAD,OAAA,CAAAC,MAAA,GAAgC1B,QAAQ,CAAC2B,SAAS;AAErE;;;;AAIO,MAAMC,IAAI,GAAAH,OAAA,CAAAG,IAAA,GAQH5B,QAAQ,CAAC4B,IAAI;AAE3B;;;;AAIO,MAAMC,KAAK,GAAAJ,OAAA,CAAAI,KAAA,GAYd7B,QAAQ,CAAC6B,KAAK;AAElB;;;;AAIO,MAAMC,WAAW,GAAAL,OAAA,CAAAK,WAAA,GAoBpB9B,QAAQ,CAAC8B,WAAW"}
@@ -3,10 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.serverTag = exports.serve = exports.make = exports.isServer = exports.TypeId = void 0;
6
+ exports.serverTag = exports.serveEffect = exports.serve = exports.make = exports.isServer = exports.TypeId = void 0;
7
7
  var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Context"));
8
8
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
9
9
  var _Function = /*#__PURE__*/require("effect/Function");
10
+ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
10
11
  function _getRequireWildcardCache(e) {
11
12
  if ("function" != typeof WeakMap) return null;
12
13
  var r = new WeakMap(),
@@ -46,5 +47,7 @@ exports.isServer = isServer;
46
47
  const make = options => Object.assign(Object.create(serverProto), options);
47
48
  /** @internal */
48
49
  exports.make = make;
49
- const serve = exports.serve = /*#__PURE__*/(0, _Function.dual)(args => Effect.isEffect(args[0]), (httpApp, middleware) => Effect.flatMap(serverTag, server => server.serve(httpApp, middleware)));
50
+ const serve = exports.serve = /*#__PURE__*/(0, _Function.dual)(args => Effect.isEffect(args[0]), (httpApp, middleware) => Layer.scopedDiscard(Effect.flatMap(serverTag, server => server.serve(httpApp, middleware))));
51
+ /** @internal */
52
+ const serveEffect = exports.serveEffect = /*#__PURE__*/(0, _Function.dual)(args => Effect.isEffect(args[0]), (httpApp, middleware) => Effect.flatMap(serverTag, server => server.serve(httpApp, middleware)));
50
53
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","names":["Context","_interopRequireWildcard","require","Effect","_Function","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","serverTag","Tag","serverProto","isServer","make","options","assign","create","serve","dual","args","isEffect","httpApp","middleware","flatMap","server"],"sources":["../../../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,MAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,SAAA,gBAAAF,OAAA;AAAsC,SAAAG,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAQtC;AACO,MAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAkBE,MAAM,CAACC,GAAG,CAAC,8BAA8B,CAAkB;AAEhG;AACO,MAAMC,SAAS,GAAAH,OAAA,CAAAG,SAAA,gBAAG9B,OAAO,CAAC+B,GAAG,CAAgBL,MAAM,CAAC;AAE3D,MAAMM,WAAW,GAAG;EAClB,CAACN,MAAM,GAAGA;CACX;AAED;AACO,MAAMO,QAAQ,GAAIb,CAAU,IAAyB,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,IAAI,IAAIM,MAAM,IAAIN,CAAC;AAE9G;AAAAO,OAAA,CAAAM,QAAA,GAAAA,QAAA;AACO,MAAMC,IAAI,GACfC,OAMC,IACiBlB,MAAM,CAACmB,MAAM,CAACnB,MAAM,CAACoB,MAAM,CAACL,WAAW,CAAC,EAAEG,OAAO,CAAC;AAEtE;AAAAR,OAAA,CAAAO,IAAA,GAAAA,IAAA;AACO,MAAMI,KAAK,GAAAX,OAAA,CAAAW,KAAA,gBAAG,IAAAlC,SAAA,CAAAmC,IAAI,EA+BtBC,IAAI,IAAKrC,MAAM,CAACsC,QAAQ,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACjC,CACCE,OAA0B,EAC1BC,UAAoD,KAMpDxC,MAAM,CAACyC,OAAO,CACZd,SAAS,EACRe,MAAM,IAAKA,MAAM,CAACP,KAAK,CAACI,OAAO,EAAEC,UAAU,CAAC,CACtC,CACZ"}
1
+ {"version":3,"file":"server.js","names":["Context","_interopRequireWildcard","require","Effect","_Function","Layer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","serverTag","Tag","serverProto","isServer","make","options","assign","create","serve","dual","args","isEffect","httpApp","middleware","scopedDiscard","flatMap","server","serveEffect"],"sources":["../../../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,10 +3,10 @@
3
3
  */
4
4
  import type * as Context from "effect/Context";
5
5
  import type * as Effect from "effect/Effect";
6
+ import type * as Layer from "effect/Layer";
6
7
  import type * as Scope from "effect/Scope";
7
8
  import type * as App from "./App.js";
8
9
  import type * as Middleware from "./Middleware.js";
9
- import type * as Error from "./ServerError.js";
10
10
  import type * as ServerRequest from "./ServerRequest.js";
11
11
  /**
12
12
  * @since 1.0.0
@@ -25,8 +25,8 @@ export type TypeId = typeof TypeId;
25
25
  export interface Server {
26
26
  readonly [TypeId]: TypeId;
27
27
  readonly serve: {
28
- <R, E>(httpApp: App.Default<R, E>): Effect.Effect<Exclude<R, ServerRequest.ServerRequest> | Scope.Scope, Error.ServeError, never>;
29
- <R, E, App extends App.Default<any, any>>(httpApp: App.Default<R, E>, middleware: Middleware.Middleware.Applied<R, E, App>): Effect.Effect<Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest> | Scope.Scope, Error.ServeError, never>;
28
+ <R, E>(httpApp: App.Default<R, E>): Effect.Effect<Exclude<R, ServerRequest.ServerRequest> | Scope.Scope, never, void>;
29
+ <R, E, App extends App.Default<any, any>>(httpApp: App.Default<R, E>, middleware: Middleware.Middleware.Applied<R, E, App>): Effect.Effect<Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest> | Scope.Scope, never, void>;
30
30
  };
31
31
  readonly address: Address;
32
32
  }
@@ -69,7 +69,7 @@ export declare const Server: Context.Tag<Server, Server>;
69
69
  * @category constructors
70
70
  */
71
71
  export declare const make: (options: {
72
- readonly serve: (httpApp: App.Default<never, unknown>, middleware?: Middleware.Middleware) => Effect.Effect<Scope.Scope, Error.ServeError, never>;
72
+ readonly serve: (httpApp: App.Default<never, unknown>, middleware?: Middleware.Middleware) => Effect.Effect<Scope.Scope, never, void>;
73
73
  readonly address: Address;
74
74
  }) => Server;
75
75
  /**
@@ -77,9 +77,19 @@ export declare const make: (options: {
77
77
  * @category accessors
78
78
  */
79
79
  export declare const serve: {
80
- (): <R, E>(httpApp: App.Default<R, E>) => Effect.Effect<Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>, Error.ServeError, never>;
81
- <R, E, App extends App.Default<any, any>>(middleware: Middleware.Middleware.Applied<R, E, App>): (httpApp: App.Default<R, E>) => Effect.Effect<Server | Scope.Scope | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, Error.ServeError, never>;
82
- <R, E>(httpApp: App.Default<R, E>): Effect.Effect<Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>, Error.ServeError, never>;
83
- <R, E, App extends App.Default<any, any>>(httpApp: App.Default<R, E>, middleware: Middleware.Middleware.Applied<R, E, App>): Effect.Effect<Server | Scope.Scope | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, Error.ServeError, never>;
80
+ (): <R, E>(httpApp: App.Default<R, E>) => Layer.Layer<Server | Exclude<R, ServerRequest.ServerRequest>, never, never>;
81
+ <R, E, App extends App.Default<any, any>>(middleware: Middleware.Middleware.Applied<R, E, App>): (httpApp: App.Default<R, E>) => Layer.Layer<Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, never>;
82
+ <R, E>(httpApp: App.Default<R, E>): Layer.Layer<Server | Exclude<R, ServerRequest.ServerRequest>, never, never>;
83
+ <R, E, App extends App.Default<any, any>>(httpApp: App.Default<R, E>, middleware: Middleware.Middleware.Applied<R, E, App>): Layer.Layer<Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, never>;
84
+ };
85
+ /**
86
+ * @since 1.0.0
87
+ * @category accessors
88
+ */
89
+ export declare const serveEffect: {
90
+ (): <R, E>(httpApp: App.Default<R, E>) => Effect.Effect<Scope.Scope | Server | Exclude<R, ServerRequest.ServerRequest>, never, void>;
91
+ <R, E, App extends App.Default<any, any>>(middleware: Middleware.Middleware.Applied<R, E, App>): (httpApp: App.Default<R, E>) => Effect.Effect<Scope.Scope | Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, void>;
92
+ <R, E>(httpApp: App.Default<R, E>): Effect.Effect<Scope.Scope | Server | Exclude<R, ServerRequest.ServerRequest>, never, void>;
93
+ <R, E, App extends App.Default<any, any>>(httpApp: App.Default<R, E>, middleware: Middleware.Middleware.Applied<R, E, App>): Effect.Effect<Scope.Scope | Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, void>;
84
94
  };
85
95
  //# sourceMappingURL=Server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../../src/Http/Server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../../src/Http/Server.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAE1C,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AACpC,OAAO,KAAK,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAExD;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAwB,CAAA;AAEpD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE;QACd,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAC/C,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,KAAK,EACrD,KAAK,EACL,IAAI,CACL,CAAA;QACD,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EACtC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GACnD,MAAM,CAAC,MAAM,CACd,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,KAAK,EAC9E,KAAK,EACL,IAAI,CACL,CAAA;KACF,CAAA;IACD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B;AAED;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,UAAU,CAAA;AAE9C;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAsB,CAAA;AAErE;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,CACjB,OAAO,EAAE;IACP,QAAQ,CAAC,KAAK,EAAE,CACd,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,EACpC,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,KAC/B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B,KACE,MAAsB,CAAA;AAE3B;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE;IAClB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACrH,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EACtC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GACnD,CACD,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KACvB,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACzG,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC/G,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EACtC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GACnD,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACvF,CAAA;AAElB;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE;IACxB,IAAI,CAAC,CAAC,EAAE,CAAC,EACP,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KACvB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC/F,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EACtC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GACnD,CACD,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KACvB,MAAM,CAAC,MAAM,CAChB,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EACvF,KAAK,EACL,IAAI,CACL,CAAA;IACD,CAAC,CAAC,EAAE,CAAC,EACH,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GACzB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC7F,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EACtC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GACnD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;CAChG,CAAA"}
@@ -19,4 +19,9 @@ export const make = internal.make;
19
19
  * @category accessors
20
20
  */
21
21
  export const serve = internal.serve;
22
+ /**
23
+ * @since 1.0.0
24
+ * @category accessors
25
+ */
26
+ export const serveEffect = internal.serveEffect;
22
27
  //# sourceMappingURL=Server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Server.js","names":["internal","TypeId","Server","serverTag","make","serve"],"sources":["../../../src/Http/Server.ts"],"sourcesContent":[null],"mappings":"AAMA,OAAO,KAAKA,QAAQ,MAAM,4BAA4B;AAMtD;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBD,QAAQ,CAACC,MAAM;AAiEpD;;;;AAIA,OAAO,MAAMC,MAAM,GAAgCF,QAAQ,CAACG,SAAS;AAErE;;;;AAIA,OAAO,MAAMC,IAAI,GAQHJ,QAAQ,CAACI,IAAI;AAE3B;;;;AAIA,OAAO,MAAMC,KAAK,GA4BdL,QAAQ,CAACK,KAAK"}
1
+ {"version":3,"file":"Server.js","names":["internal","TypeId","Server","serverTag","make","serve","serveEffect"],"sources":["../../../src/Http/Server.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,QAAQ,MAAM,4BAA4B;AAKtD;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBD,QAAQ,CAACC,MAAM;AAiEpD;;;;AAIA,OAAO,MAAMC,MAAM,GAAgCF,QAAQ,CAACG,SAAS;AAErE;;;;AAIA,OAAO,MAAMC,IAAI,GAQHJ,QAAQ,CAACI,IAAI;AAE3B;;;;AAIA,OAAO,MAAMC,KAAK,GAYdL,QAAQ,CAACK,KAAK;AAElB;;;;AAIA,OAAO,MAAMC,WAAW,GAoBpBN,QAAQ,CAACM,WAAW"}
@@ -1,6 +1,7 @@
1
1
  import * as Context from "effect/Context";
2
2
  import * as Effect from "effect/Effect";
3
3
  import { dual } from "effect/Function";
4
+ import * as Layer from "effect/Layer";
4
5
  /** @internal */
5
6
  export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/Server");
6
7
  /** @internal */
@@ -13,5 +14,7 @@ export const isServer = u => typeof u === "object" && u !== null && TypeId in u;
13
14
  /** @internal */
14
15
  export const make = options => Object.assign(Object.create(serverProto), options);
15
16
  /** @internal */
16
- export const serve = /*#__PURE__*/dual(args => Effect.isEffect(args[0]), (httpApp, middleware) => Effect.flatMap(serverTag, server => server.serve(httpApp, middleware)));
17
+ export const serve = /*#__PURE__*/dual(args => Effect.isEffect(args[0]), (httpApp, middleware) => Layer.scopedDiscard(Effect.flatMap(serverTag, server => server.serve(httpApp, middleware))));
18
+ /** @internal */
19
+ export const serveEffect = /*#__PURE__*/dual(args => Effect.isEffect(args[0]), (httpApp, middleware) => Effect.flatMap(serverTag, server => server.serve(httpApp, middleware)));
17
20
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","names":["Context","Effect","dual","TypeId","Symbol","for","serverTag","Tag","serverProto","isServer","u","make","options","Object","assign","create","serve","args","isEffect","httpApp","middleware","flatMap","server"],"sources":["../../../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,IAAI,QAAQ,iBAAiB;AAQtC;AACA,OAAO,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,8BAA8B,CAAkB;AAEhG;AACA,OAAO,MAAMC,SAAS,gBAAGN,OAAO,CAACO,GAAG,CAAgBJ,MAAM,CAAC;AAE3D,MAAMK,WAAW,GAAG;EAClB,CAACL,MAAM,GAAGA;CACX;AAED;AACA,OAAO,MAAMM,QAAQ,GAAIC,CAAU,IAAyB,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,IAAI,IAAIP,MAAM,IAAIO,CAAC;AAE9G;AACA,OAAO,MAAMC,IAAI,GACfC,OAMC,IACiBC,MAAM,CAACC,MAAM,CAACD,MAAM,CAACE,MAAM,CAACP,WAAW,CAAC,EAAEI,OAAO,CAAC;AAEtE;AACA,OAAO,MAAMI,KAAK,gBAAGd,IAAI,CA+BtBe,IAAI,IAAKhB,MAAM,CAACiB,QAAQ,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACjC,CACCE,OAA0B,EAC1BC,UAAoD,KAMpDnB,MAAM,CAACoB,OAAO,CACZf,SAAS,EACRgB,MAAM,IAAKA,MAAM,CAACN,KAAK,CAACG,OAAO,EAAEC,UAAU,CAAC,CACtC,CACZ"}
1
+ {"version":3,"file":"server.js","names":["Context","Effect","dual","Layer","TypeId","Symbol","for","serverTag","Tag","serverProto","isServer","u","make","options","Object","assign","create","serve","args","isEffect","httpApp","middleware","scopedDiscard","flatMap","server","serveEffect"],"sources":["../../../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,IAAI,QAAQ,iBAAiB;AACtC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAOrC;AACA,OAAO,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,8BAA8B,CAAkB;AAEhG;AACA,OAAO,MAAMC,SAAS,gBAAGP,OAAO,CAACQ,GAAG,CAAgBJ,MAAM,CAAC;AAE3D,MAAMK,WAAW,GAAG;EAClB,CAACL,MAAM,GAAGA;CACX;AAED;AACA,OAAO,MAAMM,QAAQ,GAAIC,CAAU,IAAyB,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,IAAI,IAAIP,MAAM,IAAIO,CAAC;AAE9G;AACA,OAAO,MAAMC,IAAI,GACfC,OAMC,IACiBC,MAAM,CAACC,MAAM,CAACD,MAAM,CAACE,MAAM,CAACP,WAAW,CAAC,EAAEI,OAAO,CAAC;AAEtE;AACA,OAAO,MAAMI,KAAK,gBAAGf,IAAI,CA+BtBgB,IAAI,IAAKjB,MAAM,CAACkB,QAAQ,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAClC,CACEE,OAA0B,EAC1BC,UAAqD,KAMrDlB,KAAK,CAACmB,aAAa,CACjBrB,MAAM,CAACsB,OAAO,CACZhB,SAAS,EACRiB,MAAM,IAAKA,MAAM,CAACP,KAAK,CAACG,OAAO,EAAEC,UAAW,CAAC,CAC/C,CACK,CACX;AAED;AACA,OAAO,MAAMI,WAAW,gBAAGvB,IAAI,CA+B5BgB,IAAI,IAAKjB,MAAM,CAACkB,QAAQ,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACjC,CACCE,OAA0B,EAC1BC,UAAoD,KAMpDpB,MAAM,CAACsB,OAAO,CACZhB,SAAS,EACRiB,MAAM,IAAKA,MAAM,CAACP,KAAK,CAACG,OAAO,EAAEC,UAAU,CAAC,CACtC,CACZ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.35.0",
3
+ "version": "0.36.0",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -3,11 +3,11 @@
3
3
  */
4
4
  import type * as Context from "effect/Context"
5
5
  import type * as Effect from "effect/Effect"
6
+ import type * as Layer from "effect/Layer"
6
7
  import type * as Scope from "effect/Scope"
7
8
  import * as internal from "../internal/http/server.js"
8
9
  import type * as App from "./App.js"
9
10
  import type * as Middleware from "./Middleware.js"
10
- import type * as Error from "./ServerError.js"
11
11
  import type * as ServerRequest from "./ServerRequest.js"
12
12
 
13
13
  /**
@@ -31,16 +31,16 @@ export interface Server {
31
31
  readonly serve: {
32
32
  <R, E>(httpApp: App.Default<R, E>): Effect.Effect<
33
33
  Exclude<R, ServerRequest.ServerRequest> | Scope.Scope,
34
- Error.ServeError,
35
- never
34
+ never,
35
+ void
36
36
  >
37
37
  <R, E, App extends App.Default<any, any>>(
38
38
  httpApp: App.Default<R, E>,
39
39
  middleware: Middleware.Middleware.Applied<R, E, App>
40
40
  ): Effect.Effect<
41
41
  Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest> | Scope.Scope,
42
- Error.ServeError,
43
- never
42
+ never,
43
+ void
44
44
  >
45
45
  }
46
46
  readonly address: Address
@@ -94,7 +94,7 @@ export const make: (
94
94
  readonly serve: (
95
95
  httpApp: App.Default<never, unknown>,
96
96
  middleware?: Middleware.Middleware
97
- ) => Effect.Effect<Scope.Scope, Error.ServeError, never>
97
+ ) => Effect.Effect<Scope.Scope, never, void>
98
98
  readonly address: Address
99
99
  }
100
100
  ) => Server = internal.make
@@ -104,31 +104,41 @@ export const make: (
104
104
  * @category accessors
105
105
  */
106
106
  export const serve: {
107
+ (): <R, E>(httpApp: App.Default<R, E>) => Layer.Layer<Server | Exclude<R, ServerRequest.ServerRequest>, never, never>
108
+ <R, E, App extends App.Default<any, any>>(
109
+ middleware: Middleware.Middleware.Applied<R, E, App>
110
+ ): (
111
+ httpApp: App.Default<R, E>
112
+ ) => Layer.Layer<Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, never>
113
+ <R, E>(httpApp: App.Default<R, E>): Layer.Layer<Server | Exclude<R, ServerRequest.ServerRequest>, never, never>
114
+ <R, E, App extends App.Default<any, any>>(
115
+ httpApp: App.Default<R, E>,
116
+ middleware: Middleware.Middleware.Applied<R, E, App>
117
+ ): Layer.Layer<Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, never>
118
+ } = internal.serve
119
+
120
+ /**
121
+ * @since 1.0.0
122
+ * @category accessors
123
+ */
124
+ export const serveEffect: {
107
125
  (): <R, E>(
108
126
  httpApp: App.Default<R, E>
109
- ) => Effect.Effect<
110
- Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>,
111
- Error.ServeError,
112
- never
113
- >
127
+ ) => Effect.Effect<Scope.Scope | Server | Exclude<R, ServerRequest.ServerRequest>, never, void>
114
128
  <R, E, App extends App.Default<any, any>>(
115
129
  middleware: Middleware.Middleware.Applied<R, E, App>
116
130
  ): (
117
131
  httpApp: App.Default<R, E>
118
132
  ) => Effect.Effect<
119
- Server | Scope.Scope | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
120
- Error.ServeError,
121
- never
133
+ Scope.Scope | Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
134
+ never,
135
+ void
122
136
  >
123
137
  <R, E>(
124
138
  httpApp: App.Default<R, E>
125
- ): Effect.Effect<Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>, Error.ServeError, never>
139
+ ): Effect.Effect<Scope.Scope | Server | Exclude<R, ServerRequest.ServerRequest>, never, void>
126
140
  <R, E, App extends App.Default<any, any>>(
127
141
  httpApp: App.Default<R, E>,
128
142
  middleware: Middleware.Middleware.Applied<R, E, App>
129
- ): Effect.Effect<
130
- Server | Scope.Scope | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
131
- Error.ServeError,
132
- never
133
- >
134
- } = internal.serve
143
+ ): Effect.Effect<Scope.Scope | Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, void>
144
+ } = internal.serveEffect
@@ -1,11 +1,11 @@
1
1
  import * as Context from "effect/Context"
2
2
  import * as Effect from "effect/Effect"
3
3
  import { dual } from "effect/Function"
4
+ import * as Layer from "effect/Layer"
4
5
  import type * as Scope from "effect/Scope"
5
6
  import type * as App from "../../Http/App.js"
6
7
  import type * as Middleware from "../../Http/Middleware.js"
7
8
  import type * as Server from "../../Http/Server.js"
8
- import type * as Error from "../../Http/ServerError.js"
9
9
  import type * as ServerRequest from "../../Http/ServerRequest.js"
10
10
 
11
11
  /** @internal */
@@ -27,40 +27,89 @@ export const make = (
27
27
  readonly serve: (
28
28
  httpApp: App.Default<never, unknown>,
29
29
  middleware?: Middleware.Middleware
30
- ) => Effect.Effect<Scope.Scope, Error.ServeError, never>
30
+ ) => Effect.Effect<Scope.Scope, never, void>
31
31
  readonly address: Server.Address
32
32
  }
33
33
  ): Server.Server => Object.assign(Object.create(serverProto), options)
34
34
 
35
35
  /** @internal */
36
36
  export const serve = dual<
37
+ {
38
+ (): <R, E>(
39
+ httpApp: App.Default<R, E>
40
+ ) => Layer.Layer<
41
+ Server.Server | Exclude<R, ServerRequest.ServerRequest>,
42
+ never,
43
+ never
44
+ >
45
+ <R, E, App extends App.Default<any, any>>(middleware: Middleware.Middleware.Applied<R, E, App>): (
46
+ httpApp: App.Default<R, E>
47
+ ) => Layer.Layer<
48
+ Server.Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
49
+ never,
50
+ never
51
+ >
52
+ },
53
+ {
54
+ <R, E>(
55
+ httpApp: App.Default<R, E>
56
+ ): Layer.Layer<Server.Server | Exclude<R, ServerRequest.ServerRequest>, never, never>
57
+ <R, E, App extends App.Default<any, any>>(
58
+ httpApp: App.Default<R, E>,
59
+ middleware: Middleware.Middleware.Applied<R, E, App>
60
+ ): Layer.Layer<
61
+ Server.Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
62
+ never,
63
+ never
64
+ >
65
+ }
66
+ >(
67
+ (args) => Effect.isEffect(args[0]),
68
+ <R, E, App extends App.Default<any, any>>(
69
+ httpApp: App.Default<R, E>,
70
+ middleware?: Middleware.Middleware.Applied<R, E, App>
71
+ ): Layer.Layer<
72
+ Server.Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
73
+ never,
74
+ never
75
+ > =>
76
+ Layer.scopedDiscard(
77
+ Effect.flatMap(
78
+ serverTag,
79
+ (server) => server.serve(httpApp, middleware!)
80
+ )
81
+ ) as any
82
+ )
83
+
84
+ /** @internal */
85
+ export const serveEffect = dual<
37
86
  {
38
87
  (): <R, E>(
39
88
  httpApp: App.Default<R, E>
40
89
  ) => Effect.Effect<
41
90
  Server.Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>,
42
- Error.ServeError,
43
- never
91
+ never,
92
+ void
44
93
  >
45
94
  <R, E, App extends App.Default<any, any>>(middleware: Middleware.Middleware.Applied<R, E, App>): (
46
95
  httpApp: App.Default<R, E>
47
96
  ) => Effect.Effect<
48
97
  Server.Server | Scope.Scope | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>,
49
- Error.ServeError,
50
- never
98
+ never,
99
+ void
51
100
  >
52
101
  },
53
102
  {
54
103
  <R, E>(
55
104
  httpApp: App.Default<R, E>
56
- ): Effect.Effect<Server.Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>, Error.ServeError, never>
105
+ ): Effect.Effect<Server.Server | Scope.Scope | Exclude<R, ServerRequest.ServerRequest>, never, void>
57
106
  <R, E, App extends App.Default<any, any>>(
58
107
  httpApp: App.Default<R, E>,
59
108
  middleware: Middleware.Middleware.Applied<R, E, App>
60
109
  ): Effect.Effect<
61
110
  Server.Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest> | Scope.Scope,
62
- Error.ServeError,
63
- never
111
+ never,
112
+ void
64
113
  >
65
114
  }
66
115
  >(
@@ -70,8 +119,8 @@ export const serve = dual<
70
119
  middleware: Middleware.Middleware.Applied<R, E, App>
71
120
  ): Effect.Effect<
72
121
  Server.Server | Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest> | Scope.Scope,
73
- Error.ServeError,
74
- never
122
+ never,
123
+ void
75
124
  > =>
76
125
  Effect.flatMap(
77
126
  serverTag,