@effect/platform-node 0.98.4 → 0.99.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/NodeClusterHttp/package.json +6 -0
  2. package/NodeClusterSocket/package.json +6 -0
  3. package/dist/cjs/{NodeClusterRunnerHttp.js → NodeClusterHttp.js} +12 -7
  4. package/dist/cjs/NodeClusterHttp.js.map +1 -0
  5. package/dist/cjs/NodeClusterSocket.js +76 -0
  6. package/dist/cjs/NodeClusterSocket.js.map +1 -0
  7. package/dist/cjs/index.js +5 -9
  8. package/dist/dts/{NodeClusterRunnerHttp.d.ts → NodeClusterHttp.d.ts} +10 -5
  9. package/dist/dts/NodeClusterHttp.d.ts.map +1 -0
  10. package/dist/dts/NodeClusterSocket.d.ts +52 -0
  11. package/dist/dts/NodeClusterSocket.d.ts.map +1 -0
  12. package/dist/dts/index.d.ts +2 -10
  13. package/dist/dts/index.d.ts.map +1 -1
  14. package/dist/esm/NodeClusterHttp.js +47 -0
  15. package/dist/esm/NodeClusterHttp.js.map +1 -0
  16. package/dist/esm/NodeClusterSocket.js +65 -0
  17. package/dist/esm/NodeClusterSocket.js.map +1 -0
  18. package/dist/esm/index.js +2 -10
  19. package/dist/esm/index.js.map +1 -1
  20. package/package.json +19 -35
  21. package/src/{NodeClusterRunnerHttp.ts → NodeClusterHttp.ts} +52 -22
  22. package/src/NodeClusterSocket.ts +150 -0
  23. package/src/index.ts +2 -12
  24. package/NodeClusterRunnerHttp/package.json +0 -6
  25. package/NodeClusterRunnerSocket/package.json +0 -6
  26. package/NodeClusterShardManagerHttp/package.json +0 -6
  27. package/NodeClusterShardManagerSocket/package.json +0 -6
  28. package/dist/cjs/NodeClusterRunnerHttp.js.map +0 -1
  29. package/dist/cjs/NodeClusterRunnerSocket.js +0 -17
  30. package/dist/cjs/NodeClusterRunnerSocket.js.map +0 -1
  31. package/dist/cjs/NodeClusterShardManagerHttp.js +0 -41
  32. package/dist/cjs/NodeClusterShardManagerHttp.js.map +0 -1
  33. package/dist/cjs/NodeClusterShardManagerSocket.js +0 -17
  34. package/dist/cjs/NodeClusterShardManagerSocket.js.map +0 -1
  35. package/dist/dts/NodeClusterRunnerHttp.d.ts.map +0 -1
  36. package/dist/dts/NodeClusterRunnerSocket.d.ts +0 -9
  37. package/dist/dts/NodeClusterRunnerSocket.d.ts.map +0 -1
  38. package/dist/dts/NodeClusterShardManagerHttp.d.ts +0 -28
  39. package/dist/dts/NodeClusterShardManagerHttp.d.ts.map +0 -1
  40. package/dist/dts/NodeClusterShardManagerSocket.d.ts +0 -9
  41. package/dist/dts/NodeClusterShardManagerSocket.d.ts.map +0 -1
  42. package/dist/esm/NodeClusterRunnerHttp.js +0 -42
  43. package/dist/esm/NodeClusterRunnerHttp.js.map +0 -1
  44. package/dist/esm/NodeClusterRunnerSocket.js +0 -9
  45. package/dist/esm/NodeClusterRunnerSocket.js.map +0 -1
  46. package/dist/esm/NodeClusterShardManagerHttp.js +0 -32
  47. package/dist/esm/NodeClusterShardManagerHttp.js.map +0 -1
  48. package/dist/esm/NodeClusterShardManagerSocket.js +0 -9
  49. package/dist/esm/NodeClusterShardManagerSocket.js.map +0 -1
  50. package/src/NodeClusterRunnerSocket.ts +0 -9
  51. package/src/NodeClusterShardManagerHttp.ts +0 -73
  52. package/src/NodeClusterShardManagerSocket.ts +0 -9
@@ -3,25 +3,27 @@
3
3
  */
4
4
  import * as HttpRunner from "@effect/cluster/HttpRunner"
5
5
  import * as MessageStorage from "@effect/cluster/MessageStorage"
6
- import type * as Runners from "@effect/cluster/Runners"
6
+ import * as RunnerHealth from "@effect/cluster/RunnerHealth"
7
+ import * as Runners from "@effect/cluster/Runners"
8
+ import * as RunnerStorage from "@effect/cluster/RunnerStorage"
7
9
  import type { Sharding } from "@effect/cluster/Sharding"
8
10
  import * as ShardingConfig from "@effect/cluster/ShardingConfig"
9
- import * as ShardStorage from "@effect/cluster/ShardStorage"
10
11
  import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage"
11
- import * as SqlShardStorage from "@effect/cluster/SqlShardStorage"
12
+ import * as SqlRunnerStorage from "@effect/cluster/SqlRunnerStorage"
12
13
  import type * as Etag from "@effect/platform/Etag"
13
14
  import type { HttpPlatform } from "@effect/platform/HttpPlatform"
14
15
  import type { HttpServer } from "@effect/platform/HttpServer"
15
16
  import type { ServeError } from "@effect/platform/HttpServerError"
16
17
  import * as RpcSerialization from "@effect/rpc/RpcSerialization"
17
18
  import type { SqlClient } from "@effect/sql/SqlClient"
18
- import type { SqlError } from "@effect/sql/SqlError"
19
19
  import type { ConfigError } from "effect/ConfigError"
20
20
  import * as Effect from "effect/Effect"
21
21
  import * as Layer from "effect/Layer"
22
22
  import * as Option from "effect/Option"
23
23
  import { createServer } from "node:http"
24
+ import { layerHttpClientK8s } from "./NodeClusterSocket.js"
24
25
  import type { NodeContext } from "./NodeContext.js"
26
+ import * as NodeFileSystem from "./NodeFileSystem.js"
25
27
  import * as NodeHttpClient from "./NodeHttpClient.js"
26
28
  import * as NodeHttpServer from "./NodeHttpServer.js"
27
29
  import * as NodeSocket from "./NodeSocket.js"
@@ -32,22 +34,32 @@ import * as NodeSocket from "./NodeSocket.js"
32
34
  */
33
35
  export const layer = <
34
36
  const ClientOnly extends boolean = false,
35
- const Storage extends "noop" | "sql" = never
37
+ const Storage extends "local" | "sql" | "byo" = never,
38
+ const Health extends "ping" | "k8s" = never
36
39
  >(options: {
37
40
  readonly transport: "http" | "websocket"
38
41
  readonly serialization?: "msgpack" | "ndjson" | undefined
39
42
  readonly clientOnly?: ClientOnly | undefined
40
43
  readonly storage?: Storage | undefined
44
+ readonly runnerHealth?: Health | undefined
45
+ readonly runnerHealthK8s?: {
46
+ readonly namespace?: string | undefined
47
+ readonly labelSelector?: string | undefined
48
+ } | undefined
41
49
  readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined
42
50
  }): ClientOnly extends true ? Layer.Layer<
43
- Sharding | Runners.Runners | MessageStorage.MessageStorage,
44
- ConfigError | ("sql" extends Storage ? SqlError : never),
45
- "sql" extends Storage ? SqlClient : never
51
+ Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage),
52
+ ConfigError,
53
+ "local" extends Storage ? never
54
+ : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage)
55
+ : SqlClient
46
56
  > :
47
57
  Layer.Layer<
48
- Sharding | Runners.Runners | MessageStorage.MessageStorage,
49
- ServeError | ConfigError | ("sql" extends Storage ? SqlError : never),
50
- "sql" extends Storage ? SqlClient : never
58
+ Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage),
59
+ ServeError | ConfigError,
60
+ "local" extends Storage ? never
61
+ : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage)
62
+ : SqlClient
51
63
  > =>
52
64
  {
53
65
  const layer: Layer.Layer<any, any, any> = options.clientOnly
@@ -60,16 +72,36 @@ export const layer = <
60
72
  ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici])
61
73
  : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor])
62
74
 
75
+ const runnerHealth: Layer.Layer<any, any, any> = options?.clientOnly
76
+ ? Layer.empty as any
77
+ : options?.runnerHealth === "k8s"
78
+ ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(
79
+ Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])
80
+ )
81
+ : RunnerHealth.layerPing.pipe(
82
+ Layer.provide(Runners.layerRpc),
83
+ Layer.provide(
84
+ options.transport === "http"
85
+ ? HttpRunner.layerClientProtocolHttpDefault.pipe(Layer.provide(NodeHttpClient.layerUndici))
86
+ : HttpRunner.layerClientProtocolWebsocketDefault.pipe(Layer.provide(NodeSocket.layerWebSocketConstructor))
87
+ )
88
+ )
89
+
63
90
  return layer.pipe(
91
+ Layer.provide(runnerHealth),
64
92
  Layer.provideMerge(
65
- options?.storage === "sql" ?
66
- SqlMessageStorage.layer
67
- : MessageStorage.layerNoop
93
+ options?.storage === "local"
94
+ ? MessageStorage.layerNoop
95
+ : options?.storage === "byo"
96
+ ? Layer.empty
97
+ : Layer.orDie(SqlMessageStorage.layer)
68
98
  ),
69
99
  Layer.provide(
70
- options?.storage === "sql"
71
- ? options.clientOnly ? Layer.empty : SqlShardStorage.layer
72
- : ShardStorage.layerNoop
100
+ options?.storage === "local"
101
+ ? RunnerStorage.layerMemory
102
+ : options?.storage === "byo"
103
+ ? Layer.empty
104
+ : Layer.orDie(SqlRunnerStorage.layer)
73
105
  ),
74
106
  Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)),
75
107
  Layer.provide(
@@ -91,11 +123,9 @@ export const layerHttpServer: Layer.Layer<
91
123
  ShardingConfig.ShardingConfig
92
124
  > = Effect.gen(function*() {
93
125
  const config = yield* ShardingConfig.ShardingConfig
94
- const listenAddress = config.runnerListenAddress.pipe(
95
- Option.orElse(() => config.runnerAddress)
96
- )
97
- if (Option.isNone(listenAddress)) {
98
- return yield* Effect.dieMessage("NodeClusterHttpRunner.layerHttpServer: ShardingConfig.podAddress is None")
126
+ const listenAddress = Option.orElse(config.runnerListenAddress, () => config.runnerAddress)
127
+ if (listenAddress._tag === "None") {
128
+ return yield* Effect.die("NodeClusterHttp.layerHttpServer: ShardingConfig.runnerAddress is None")
99
129
  }
100
130
  return NodeHttpServer.layer(createServer, listenAddress.value)
101
131
  }).pipe(Layer.unwrapEffect)
@@ -0,0 +1,150 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as MessageStorage from "@effect/cluster/MessageStorage"
5
+ import * as RunnerHealth from "@effect/cluster/RunnerHealth"
6
+ import * as Runners from "@effect/cluster/Runners"
7
+ import * as RunnerStorage from "@effect/cluster/RunnerStorage"
8
+ import type { Sharding } from "@effect/cluster/Sharding"
9
+ import * as ShardingConfig from "@effect/cluster/ShardingConfig"
10
+ import * as SocketRunner from "@effect/cluster/SocketRunner"
11
+ import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage"
12
+ import * as SqlRunnerStorage from "@effect/cluster/SqlRunnerStorage"
13
+ import { layerClientProtocol, layerSocketServer } from "@effect/platform-node-shared/NodeClusterSocket"
14
+ import * as FileSystem from "@effect/platform/FileSystem"
15
+ import type * as HttpClient from "@effect/platform/HttpClient"
16
+ import type * as SocketServer from "@effect/platform/SocketServer"
17
+ import * as RpcSerialization from "@effect/rpc/RpcSerialization"
18
+ import type { SqlClient } from "@effect/sql/SqlClient"
19
+ import type { ConfigError } from "effect/ConfigError"
20
+ import * as Effect from "effect/Effect"
21
+ import * as Layer from "effect/Layer"
22
+ import * as NodeFileSystem from "./NodeFileSystem.js"
23
+ import * as NodeHttpClient from "./NodeHttpClient.js"
24
+ import * as Undici from "./Undici.js"
25
+
26
+ export {
27
+ /**
28
+ * @since 1.0.0
29
+ * @category Re-exports
30
+ */
31
+ layerClientProtocol,
32
+ /**
33
+ * @since 1.0.0
34
+ * @category Re-exports
35
+ */
36
+ layerSocketServer
37
+ }
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category Layers
42
+ */
43
+ export const layer = <
44
+ const ClientOnly extends boolean = false,
45
+ const Storage extends "local" | "sql" | "byo" = never,
46
+ const Health extends "ping" | "k8s" = never
47
+ >(
48
+ options?: {
49
+ readonly serialization?: "msgpack" | "ndjson" | undefined
50
+ readonly clientOnly?: ClientOnly | undefined
51
+ readonly storage?: Storage | undefined
52
+ readonly runnerHealth?: Health | undefined
53
+ readonly runnerHealthK8s?: {
54
+ readonly namespace?: string | undefined
55
+ readonly labelSelector?: string | undefined
56
+ } | undefined
57
+ readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined
58
+ }
59
+ ): ClientOnly extends true ? Layer.Layer<
60
+ Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage),
61
+ ConfigError,
62
+ "local" extends Storage ? never
63
+ : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage)
64
+ : SqlClient
65
+ > :
66
+ Layer.Layer<
67
+ Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage),
68
+ SocketServer.SocketServerError | ConfigError,
69
+ "local" extends Storage ? never
70
+ : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage)
71
+ : SqlClient
72
+ > =>
73
+ {
74
+ const layer: Layer.Layer<any, any, any> = options?.clientOnly
75
+ // client only
76
+ ? Layer.provide(SocketRunner.layerClientOnly, layerClientProtocol)
77
+ // with server
78
+ : Layer.provide(SocketRunner.layer, [layerSocketServer, layerClientProtocol])
79
+
80
+ const runnerHealth: Layer.Layer<any, any, any> = options?.clientOnly
81
+ ? Layer.empty as any
82
+ : options?.runnerHealth === "k8s"
83
+ ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(
84
+ Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])
85
+ )
86
+ : RunnerHealth.layerPing.pipe(
87
+ Layer.provide(Runners.layerRpc),
88
+ Layer.provide(layerClientProtocol)
89
+ )
90
+
91
+ return layer.pipe(
92
+ Layer.provide(runnerHealth),
93
+ Layer.provideMerge(
94
+ options?.storage === "local"
95
+ ? MessageStorage.layerNoop
96
+ : options?.storage === "byo"
97
+ ? Layer.empty
98
+ : Layer.orDie(SqlMessageStorage.layer)
99
+ ),
100
+ Layer.provide(
101
+ options?.storage === "local"
102
+ ? RunnerStorage.layerMemory
103
+ : options?.storage === "byo"
104
+ ? Layer.empty
105
+ : Layer.orDie(SqlRunnerStorage.layer)
106
+ ),
107
+ Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)),
108
+ Layer.provide(
109
+ options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack
110
+ )
111
+ ) as any
112
+ }
113
+
114
+ /**
115
+ * @since 1.0.0
116
+ * @category Layers
117
+ */
118
+ export const layerDispatcherK8s: Layer.Layer<NodeHttpClient.Dispatcher> = Layer.scoped(NodeHttpClient.Dispatcher)(
119
+ Effect.gen(function*() {
120
+ const fs = yield* FileSystem.FileSystem
121
+ const caCertOption = yield* fs.readFileString("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt").pipe(
122
+ Effect.option
123
+ )
124
+ if (caCertOption._tag === "Some") {
125
+ return yield* Effect.acquireRelease(
126
+ Effect.sync(() =>
127
+ new Undici.Agent({
128
+ connect: {
129
+ ca: caCertOption.value
130
+ }
131
+ })
132
+ ),
133
+ (agent) => Effect.promise(() => agent.destroy())
134
+ )
135
+ }
136
+
137
+ return yield* NodeHttpClient.makeDispatcher
138
+ })
139
+ ).pipe(
140
+ Layer.provide(NodeFileSystem.layer)
141
+ )
142
+ /**
143
+ * @since 1.0.0
144
+ * @category Layers
145
+ */
146
+ export const layerHttpClientK8s: Layer.Layer<HttpClient.HttpClient> = Layer.fresh(
147
+ NodeHttpClient.layerUndiciWithoutDispatcher
148
+ ).pipe(
149
+ Layer.provide(layerDispatcherK8s)
150
+ )
package/src/index.ts CHANGED
@@ -1,22 +1,12 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- export * as NodeClusterRunnerHttp from "./NodeClusterRunnerHttp.js"
4
+ export * as NodeClusterHttp from "./NodeClusterHttp.js"
5
5
 
6
6
  /**
7
7
  * @since 1.0.0
8
8
  */
9
- export * as NodeClusterRunnerSocket from "./NodeClusterRunnerSocket.js"
10
-
11
- /**
12
- * @since 1.0.0
13
- */
14
- export * as NodeClusterShardManagerHttp from "./NodeClusterShardManagerHttp.js"
15
-
16
- /**
17
- * @since 1.0.0
18
- */
19
- export * as NodeClusterShardManagerSocket from "./NodeClusterShardManagerSocket.js"
9
+ export * as NodeClusterSocket from "./NodeClusterSocket.js"
20
10
 
21
11
  /**
22
12
  * @since 1.0.0
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": [],
3
- "main": "../dist/cjs/NodeClusterRunnerHttp.js",
4
- "module": "../dist/esm/NodeClusterRunnerHttp.js",
5
- "types": "../dist/dts/NodeClusterRunnerHttp.d.ts"
6
- }
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": [],
3
- "main": "../dist/cjs/NodeClusterRunnerSocket.js",
4
- "module": "../dist/esm/NodeClusterRunnerSocket.js",
5
- "types": "../dist/dts/NodeClusterRunnerSocket.d.ts"
6
- }
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": [],
3
- "main": "../dist/cjs/NodeClusterShardManagerHttp.js",
4
- "module": "../dist/esm/NodeClusterShardManagerHttp.js",
5
- "types": "../dist/dts/NodeClusterShardManagerHttp.d.ts"
6
- }
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": [],
3
- "main": "../dist/cjs/NodeClusterShardManagerSocket.js",
4
- "module": "../dist/esm/NodeClusterShardManagerSocket.js",
5
- "types": "../dist/dts/NodeClusterShardManagerSocket.d.ts"
6
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterRunnerHttp.js","names":["HttpRunner","_interopRequireWildcard","require","MessageStorage","ShardingConfig","ShardStorage","SqlMessageStorage","SqlShardStorage","RpcSerialization","Effect","Layer","Option","_nodeHttp","NodeHttpClient","NodeHttpServer","NodeSocket","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","layer","options","clientOnly","transport","provide","layerHttpClientOnly","layerUndici","layerWebsocketClientOnly","layerWebSocketConstructor","layerHttp","layerHttpServer","layerWebsocket","pipe","provideMerge","storage","layerNoop","empty","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","exports","gen","config","listenAddress","runnerListenAddress","orElse","runnerAddress","isNone","dieMessage","createServer","value","unwrapEffect"],"sources":["../../src/NodeClusterRunnerHttp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _NodeClusterRunnerSocket = require("@effect/platform-node-shared/NodeClusterRunnerSocket");
7
- Object.keys(_NodeClusterRunnerSocket).forEach(function (key) {
8
- if (key === "default" || key === "__esModule") return;
9
- if (key in exports && exports[key] === _NodeClusterRunnerSocket[key]) return;
10
- Object.defineProperty(exports, key, {
11
- enumerable: true,
12
- get: function () {
13
- return _NodeClusterRunnerSocket[key];
14
- }
15
- });
16
- });
17
- //# sourceMappingURL=NodeClusterRunnerSocket.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterRunnerSocket.js","names":["_NodeClusterRunnerSocket","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../src/NodeClusterRunnerSocket.ts"],"sourcesContent":[null],"mappings":";;;;;AAQA,IAAAA,wBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,wBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,wBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,wBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -1,41 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.layerHttpServer = exports.layer = void 0;
7
- var HttpShardManager = _interopRequireWildcard(require("@effect/cluster/HttpShardManager"));
8
- var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
9
- var ShardManager = _interopRequireWildcard(require("@effect/cluster/ShardManager"));
10
- var ShardStorage = _interopRequireWildcard(require("@effect/cluster/ShardStorage"));
11
- var SqlShardStorage = _interopRequireWildcard(require("@effect/cluster/SqlShardStorage"));
12
- var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
13
- var Effect = _interopRequireWildcard(require("effect/Effect"));
14
- var Layer = _interopRequireWildcard(require("effect/Layer"));
15
- var _nodeHttp = require("node:http");
16
- var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
17
- var NodeHttpServer = _interopRequireWildcard(require("./NodeHttpServer.js"));
18
- var NodeSocket = _interopRequireWildcard(require("./NodeSocket.js"));
19
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
20
- /**
21
- * @since 1.0.0
22
- */
23
-
24
- /**
25
- * @since 1.0.0
26
- * @category Layers
27
- */
28
- const layerHttpServer = exports.layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
29
- const config = yield* ShardingConfig.ShardingConfig;
30
- return NodeHttpServer.layer(_nodeHttp.createServer, config.shardManagerAddress);
31
- }).pipe(Layer.unwrapEffect);
32
- /**
33
- * @since 1.0.0
34
- * @category Layers
35
- */
36
- const layer = options => {
37
- const layer = options.transport === "http" ? HttpShardManager.layerHttp.pipe(Layer.provide([HttpShardManager.layerRunnerHealthHttp, layerHttpServer]), Layer.provide(NodeHttpClient.layerUndici)) : HttpShardManager.layerWebsocket.pipe(Layer.provide([HttpShardManager.layerRunnerHealthWebsocket, layerHttpServer]), Layer.provide(NodeSocket.layerWebSocketConstructor));
38
- return layer.pipe(Layer.provide(options?.storage === "sql" ? SqlShardStorage.layer : ShardStorage.layerNoop), Layer.provide([ShardingConfig.layerFromEnv(options.shardingConfig), ShardManager.layerConfigFromEnv(options?.config), options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack]));
39
- };
40
- exports.layer = layer;
41
- //# sourceMappingURL=NodeClusterShardManagerHttp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterShardManagerHttp.js","names":["HttpShardManager","_interopRequireWildcard","require","ShardingConfig","ShardManager","ShardStorage","SqlShardStorage","RpcSerialization","Effect","Layer","_nodeHttp","NodeHttpClient","NodeHttpServer","NodeSocket","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","layerHttpServer","exports","gen","config","layer","createServer","shardManagerAddress","pipe","unwrapEffect","options","transport","layerHttp","provide","layerRunnerHealthHttp","layerUndici","layerWebsocket","layerRunnerHealthWebsocket","layerWebSocketConstructor","storage","layerNoop","layerFromEnv","shardingConfig","layerConfigFromEnv","serialization","layerNdjson","layerMsgPack"],"sources":["../../src/NodeClusterShardManagerHttp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _NodeClusterShardManagerSocket = require("@effect/platform-node-shared/NodeClusterShardManagerSocket");
7
- Object.keys(_NodeClusterShardManagerSocket).forEach(function (key) {
8
- if (key === "default" || key === "__esModule") return;
9
- if (key in exports && exports[key] === _NodeClusterShardManagerSocket[key]) return;
10
- Object.defineProperty(exports, key, {
11
- enumerable: true,
12
- get: function () {
13
- return _NodeClusterShardManagerSocket[key];
14
- }
15
- });
16
- });
17
- //# sourceMappingURL=NodeClusterShardManagerSocket.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterShardManagerSocket.js","names":["_NodeClusterShardManagerSocket","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../src/NodeClusterShardManagerSocket.ts"],"sourcesContent":[null],"mappings":";;;;;AAQA,IAAAA,8BAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,8BAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,8BAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,8BAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterRunnerHttp.d.ts","sourceRoot":"","sources":["../../src/NodeClusterRunnerHttp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,KAAK,OAAO,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAIhE,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAKnD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,KAAK,CAAC,UAAU,SAAS,OAAO,GAAG,KAAK,EACxC,KAAK,CAAC,OAAO,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,EAC5C,SAAS;IACT,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACrF,KAAG,UAAU,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CACrC,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC,cAAc,EAC1D,WAAW,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,EACxD,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,CAC1C,GACD,KAAK,CAAC,KAAK,CACT,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC,cAAc,EAC1D,UAAU,GAAG,WAAW,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,EACrE,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,CA6B5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,KAAK,CACrC,YAAY,GACZ,IAAI,CAAC,SAAS,GACd,WAAW,GACX,UAAU,EACZ,UAAU,EACV,cAAc,CAAC,cAAc,CAUJ,CAAA"}
@@ -1,9 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- /**
5
- * @since 1.0.0
6
- * @category Re-exports
7
- */
8
- export * from "@effect/platform-node-shared/NodeClusterRunnerSocket";
9
- //# sourceMappingURL=NodeClusterRunnerSocket.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterRunnerSocket.d.ts","sourceRoot":"","sources":["../../src/NodeClusterRunnerSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,cAAc,sDAAsD,CAAA"}
@@ -1,28 +0,0 @@
1
- import * as ShardingConfig from "@effect/cluster/ShardingConfig";
2
- import * as ShardManager from "@effect/cluster/ShardManager";
3
- import type * as Etag from "@effect/platform/Etag";
4
- import type { HttpPlatform } from "@effect/platform/HttpPlatform";
5
- import type { HttpServer } from "@effect/platform/HttpServer";
6
- import type { ServeError } from "@effect/platform/HttpServerError";
7
- import type { SqlClient } from "@effect/sql/SqlClient";
8
- import type { SqlError } from "@effect/sql/SqlError";
9
- import type { ConfigError } from "effect/ConfigError";
10
- import * as Layer from "effect/Layer";
11
- import type { NodeContext } from "./NodeContext.js";
12
- /**
13
- * @since 1.0.0
14
- * @category Layers
15
- */
16
- export declare const layerHttpServer: Layer.Layer<HttpPlatform | Etag.Generator | NodeContext | HttpServer, ServeError, ShardingConfig.ShardingConfig>;
17
- /**
18
- * @since 1.0.0
19
- * @category Layers
20
- */
21
- export declare const layer: <const Storage extends "sql" | "noop" = never>(options: {
22
- readonly transport: "http" | "websocket";
23
- readonly serialization?: "msgpack" | "ndjson" | undefined;
24
- readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined;
25
- readonly storage?: Storage | undefined;
26
- readonly config?: Partial<ShardManager.Config["Type"]> | undefined;
27
- }) => Layer.Layer<ShardManager.ShardManager, ServeError | ConfigError | ("sql" extends Storage ? SqlError : never), "sql" extends Storage ? SqlClient : never>;
28
- //# sourceMappingURL=NodeClusterShardManagerHttp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterShardManagerHttp.d.ts","sourceRoot":"","sources":["../../src/NodeClusterShardManagerHttp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAA;AAG5D,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAKnD;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,KAAK,CACrC,YAAY,GACZ,IAAI,CAAC,SAAS,GACd,WAAW,GACX,UAAU,EACZ,UAAU,EACV,cAAc,CAAC,cAAc,CAIJ,CAAA;AAE3B;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,CAAC,OAAO,SAAS,KAAK,GAAG,MAAM,GAAG,KAAK,EAAE,SAAS;IAC3E,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;IACpF,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACnE,KAAG,KAAK,CAAC,KAAK,CACb,YAAY,CAAC,YAAY,EACzB,UAAU,GAAG,WAAW,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC,EACrE,KAAK,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,CAmB1C,CAAA"}
@@ -1,9 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- /**
5
- * @since 1.0.0
6
- * @category Re-exports
7
- */
8
- export * from "@effect/platform-node-shared/NodeClusterShardManagerSocket";
9
- //# sourceMappingURL=NodeClusterShardManagerSocket.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterShardManagerSocket.d.ts","sourceRoot":"","sources":["../../src/NodeClusterShardManagerSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,cAAc,4DAA4D,CAAA"}
@@ -1,42 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import * as HttpRunner from "@effect/cluster/HttpRunner";
5
- import * as MessageStorage from "@effect/cluster/MessageStorage";
6
- import * as ShardingConfig from "@effect/cluster/ShardingConfig";
7
- import * as ShardStorage from "@effect/cluster/ShardStorage";
8
- import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage";
9
- import * as SqlShardStorage from "@effect/cluster/SqlShardStorage";
10
- import * as RpcSerialization from "@effect/rpc/RpcSerialization";
11
- import * as Effect from "effect/Effect";
12
- import * as Layer from "effect/Layer";
13
- import * as Option from "effect/Option";
14
- import { createServer } from "node:http";
15
- import * as NodeHttpClient from "./NodeHttpClient.js";
16
- import * as NodeHttpServer from "./NodeHttpServer.js";
17
- import * as NodeSocket from "./NodeSocket.js";
18
- /**
19
- * @since 1.0.0
20
- * @category Layers
21
- */
22
- export const layer = options => {
23
- const layer = options.clientOnly
24
- // client only
25
- ? options.transport === "http" ? Layer.provide(HttpRunner.layerHttpClientOnly, NodeHttpClient.layerUndici) : Layer.provide(HttpRunner.layerWebsocketClientOnly, NodeSocket.layerWebSocketConstructor)
26
- // with server
27
- : options.transport === "http" ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici]) : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor]);
28
- return layer.pipe(Layer.provideMerge(options?.storage === "sql" ? SqlMessageStorage.layer : MessageStorage.layerNoop), Layer.provide(options?.storage === "sql" ? options.clientOnly ? Layer.empty : SqlShardStorage.layer : ShardStorage.layerNoop), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
29
- };
30
- /**
31
- * @since 1.0.0
32
- * @category Layers
33
- */
34
- export const layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
35
- const config = yield* ShardingConfig.ShardingConfig;
36
- const listenAddress = config.runnerListenAddress.pipe(Option.orElse(() => config.runnerAddress));
37
- if (Option.isNone(listenAddress)) {
38
- return yield* Effect.dieMessage("NodeClusterHttpRunner.layerHttpServer: ShardingConfig.podAddress is None");
39
- }
40
- return NodeHttpServer.layer(createServer, listenAddress.value);
41
- }).pipe(Layer.unwrapEffect);
42
- //# sourceMappingURL=NodeClusterRunnerHttp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterRunnerHttp.js","names":["HttpRunner","MessageStorage","ShardingConfig","ShardStorage","SqlMessageStorage","SqlShardStorage","RpcSerialization","Effect","Layer","Option","createServer","NodeHttpClient","NodeHttpServer","NodeSocket","layer","options","clientOnly","transport","provide","layerHttpClientOnly","layerUndici","layerWebsocketClientOnly","layerWebSocketConstructor","layerHttp","layerHttpServer","layerWebsocket","pipe","provideMerge","storage","layerNoop","empty","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","gen","config","listenAddress","runnerListenAddress","orElse","runnerAddress","isNone","dieMessage","value","unwrapEffect"],"sources":["../../src/NodeClusterRunnerHttp.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,UAAU,MAAM,4BAA4B;AACxD,OAAO,KAAKC,cAAc,MAAM,gCAAgC;AAGhE,OAAO,KAAKC,cAAc,MAAM,gCAAgC;AAChE,OAAO,KAAKC,YAAY,MAAM,8BAA8B;AAC5D,OAAO,KAAKC,iBAAiB,MAAM,mCAAmC;AACtE,OAAO,KAAKC,eAAe,MAAM,iCAAiC;AAKlE,OAAO,KAAKC,gBAAgB,MAAM,8BAA8B;AAIhE,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,YAAY,QAAQ,WAAW;AAExC,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;;AAIA,OAAO,MAAMC,KAAK,GAGhBC,OAMD,IASK;EAEJ,MAAMD,KAAK,GAA+BC,OAAO,CAACC;EAChD;EAAA,EACED,OAAO,CAACE,SAAS,KAAK,MAAM,GAC1BT,KAAK,CAACU,OAAO,CAAClB,UAAU,CAACmB,mBAAmB,EAAER,cAAc,CAACS,WAAW,CAAC,GACzEZ,KAAK,CAACU,OAAO,CAAClB,UAAU,CAACqB,wBAAwB,EAAER,UAAU,CAACS,yBAAyB;EAC3F;EAAA,EACEP,OAAO,CAACE,SAAS,KAAK,MAAM,GAC5BT,KAAK,CAACU,OAAO,CAAClB,UAAU,CAACuB,SAAS,EAAE,CAACC,eAAe,EAAEb,cAAc,CAACS,WAAW,CAAC,CAAC,GAClFZ,KAAK,CAACU,OAAO,CAAClB,UAAU,CAACyB,cAAc,EAAE,CAACD,eAAe,EAAEX,UAAU,CAACS,yBAAyB,CAAC,CAAC;EAErG,OAAOR,KAAK,CAACY,IAAI,CACflB,KAAK,CAACmB,YAAY,CAChBZ,OAAO,EAAEa,OAAO,KAAK,KAAK,GACxBxB,iBAAiB,CAACU,KAAK,GACrBb,cAAc,CAAC4B,SAAS,CAC7B,EACDrB,KAAK,CAACU,OAAO,CACXH,OAAO,EAAEa,OAAO,KAAK,KAAK,GACtBb,OAAO,CAACC,UAAU,GAAGR,KAAK,CAACsB,KAAK,GAAGzB,eAAe,CAACS,KAAK,GACxDX,YAAY,CAAC0B,SAAS,CAC3B,EACDrB,KAAK,CAACU,OAAO,CAAChB,cAAc,CAAC6B,YAAY,CAAChB,OAAO,EAAEiB,cAAc,CAAC,CAAC,EACnExB,KAAK,CAACU,OAAO,CACXH,OAAO,EAAEkB,aAAa,KAAK,QAAQ,GAAG3B,gBAAgB,CAAC4B,WAAW,GAAG5B,gBAAgB,CAAC6B,YAAY,CACnG,CACK;AACV,CAAC;AAED;;;;AAIA,OAAO,MAAMX,eAAe,gBAOxBjB,MAAM,CAAC6B,GAAG,CAAC,aAAS;EACtB,MAAMC,MAAM,GAAG,OAAOnC,cAAc,CAACA,cAAc;EACnD,MAAMoC,aAAa,GAAGD,MAAM,CAACE,mBAAmB,CAACb,IAAI,CACnDjB,MAAM,CAAC+B,MAAM,CAAC,MAAMH,MAAM,CAACI,aAAa,CAAC,CAC1C;EACD,IAAIhC,MAAM,CAACiC,MAAM,CAACJ,aAAa,CAAC,EAAE;IAChC,OAAO,OAAO/B,MAAM,CAACoC,UAAU,CAAC,0EAA0E,CAAC;EAC7G;EACA,OAAO/B,cAAc,CAACE,KAAK,CAACJ,YAAY,EAAE4B,aAAa,CAACM,KAAK,CAAC;AAChE,CAAC,CAAC,CAAClB,IAAI,CAAClB,KAAK,CAACqC,YAAY,CAAC","ignoreList":[]}
@@ -1,9 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- /**
5
- * @since 1.0.0
6
- * @category Re-exports
7
- */
8
- export * from "@effect/platform-node-shared/NodeClusterRunnerSocket";
9
- //# sourceMappingURL=NodeClusterRunnerSocket.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterRunnerSocket.js","names":[],"sources":["../../src/NodeClusterRunnerSocket.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;;;;AAIA,cAAc,sDAAsD","ignoreList":[]}
@@ -1,32 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import * as HttpShardManager from "@effect/cluster/HttpShardManager";
5
- import * as ShardingConfig from "@effect/cluster/ShardingConfig";
6
- import * as ShardManager from "@effect/cluster/ShardManager";
7
- import * as ShardStorage from "@effect/cluster/ShardStorage";
8
- import * as SqlShardStorage from "@effect/cluster/SqlShardStorage";
9
- import * as RpcSerialization from "@effect/rpc/RpcSerialization";
10
- import * as Effect from "effect/Effect";
11
- import * as Layer from "effect/Layer";
12
- import { createServer } from "node:http";
13
- import * as NodeHttpClient from "./NodeHttpClient.js";
14
- import * as NodeHttpServer from "./NodeHttpServer.js";
15
- import * as NodeSocket from "./NodeSocket.js";
16
- /**
17
- * @since 1.0.0
18
- * @category Layers
19
- */
20
- export const layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
21
- const config = yield* ShardingConfig.ShardingConfig;
22
- return NodeHttpServer.layer(createServer, config.shardManagerAddress);
23
- }).pipe(Layer.unwrapEffect);
24
- /**
25
- * @since 1.0.0
26
- * @category Layers
27
- */
28
- export const layer = options => {
29
- const layer = options.transport === "http" ? HttpShardManager.layerHttp.pipe(Layer.provide([HttpShardManager.layerRunnerHealthHttp, layerHttpServer]), Layer.provide(NodeHttpClient.layerUndici)) : HttpShardManager.layerWebsocket.pipe(Layer.provide([HttpShardManager.layerRunnerHealthWebsocket, layerHttpServer]), Layer.provide(NodeSocket.layerWebSocketConstructor));
30
- return layer.pipe(Layer.provide(options?.storage === "sql" ? SqlShardStorage.layer : ShardStorage.layerNoop), Layer.provide([ShardingConfig.layerFromEnv(options.shardingConfig), ShardManager.layerConfigFromEnv(options?.config), options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack]));
31
- };
32
- //# sourceMappingURL=NodeClusterShardManagerHttp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeClusterShardManagerHttp.js","names":["HttpShardManager","ShardingConfig","ShardManager","ShardStorage","SqlShardStorage","RpcSerialization","Effect","Layer","createServer","NodeHttpClient","NodeHttpServer","NodeSocket","layerHttpServer","gen","config","layer","shardManagerAddress","pipe","unwrapEffect","options","transport","layerHttp","provide","layerRunnerHealthHttp","layerUndici","layerWebsocket","layerRunnerHealthWebsocket","layerWebSocketConstructor","storage","layerNoop","layerFromEnv","shardingConfig","layerConfigFromEnv","serialization","layerNdjson","layerMsgPack"],"sources":["../../src/NodeClusterShardManagerHttp.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,gBAAgB,MAAM,kCAAkC;AACpE,OAAO,KAAKC,cAAc,MAAM,gCAAgC;AAChE,OAAO,KAAKC,YAAY,MAAM,8BAA8B;AAC5D,OAAO,KAAKC,YAAY,MAAM,8BAA8B;AAC5D,OAAO,KAAKC,eAAe,MAAM,iCAAiC;AAKlE,OAAO,KAAKC,gBAAgB,MAAM,8BAA8B;AAIhE,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,SAASC,YAAY,QAAQ,WAAW;AAExC,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;;AAIA,OAAO,MAAMC,eAAe,gBAOxBN,MAAM,CAACO,GAAG,CAAC,aAAS;EACtB,MAAMC,MAAM,GAAG,OAAOb,cAAc,CAACA,cAAc;EACnD,OAAOS,cAAc,CAACK,KAAK,CAACP,YAAY,EAAEM,MAAM,CAACE,mBAAmB,CAAC;AACvE,CAAC,CAAC,CAACC,IAAI,CAACV,KAAK,CAACW,YAAY,CAAC;AAE3B;;;;AAIA,OAAO,MAAMH,KAAK,GAAkDI,OAMnE,IAIG;EACF,MAAMJ,KAAK,GAA+BI,OAAO,CAACC,SAAS,KAAK,MAAM,GACpEpB,gBAAgB,CAACqB,SAAS,CAACJ,IAAI,CAC7BV,KAAK,CAACe,OAAO,CAAC,CAACtB,gBAAgB,CAACuB,qBAAqB,EAAEX,eAAe,CAAC,CAAC,EACxEL,KAAK,CAACe,OAAO,CAACb,cAAc,CAACe,WAAW,CAAC,CAC1C,GACDxB,gBAAgB,CAACyB,cAAc,CAACR,IAAI,CAClCV,KAAK,CAACe,OAAO,CAAC,CAACtB,gBAAgB,CAAC0B,0BAA0B,EAAEd,eAAe,CAAC,CAAC,EAC7EL,KAAK,CAACe,OAAO,CAACX,UAAU,CAACgB,yBAAyB,CAAC,CACpD;EACH,OAAOZ,KAAK,CAACE,IAAI,CACfV,KAAK,CAACe,OAAO,CAACH,OAAO,EAAES,OAAO,KAAK,KAAK,GAAGxB,eAAe,CAACW,KAAK,GAAGZ,YAAY,CAAC0B,SAAS,CAAC,EAC1FtB,KAAK,CAACe,OAAO,CAAC,CACZrB,cAAc,CAAC6B,YAAY,CAACX,OAAO,CAACY,cAAc,CAAC,EACnD7B,YAAY,CAAC8B,kBAAkB,CAACb,OAAO,EAAEL,MAAM,CAAC,EAChDK,OAAO,EAAEc,aAAa,KAAK,QAAQ,GAAG5B,gBAAgB,CAAC6B,WAAW,GAAG7B,gBAAgB,CAAC8B,YAAY,CACnG,CAAC,CACH;AACH,CAAC","ignoreList":[]}
@@ -1,9 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- /**
5
- * @since 1.0.0
6
- * @category Re-exports
7
- */
8
- export * from "@effect/platform-node-shared/NodeClusterShardManagerSocket";
9
- //# sourceMappingURL=NodeClusterShardManagerSocket.js.map