@effect/platform 0.46.3 → 0.47.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 (45) hide show
  1. package/PlatformLogger/package.json +6 -0
  2. package/Socket/package.json +6 -0
  3. package/dist/cjs/Http/ServerRequest.js +11 -1
  4. package/dist/cjs/Http/ServerRequest.js.map +1 -1
  5. package/dist/cjs/PlatformLogger.js +57 -0
  6. package/dist/cjs/PlatformLogger.js.map +1 -0
  7. package/dist/cjs/Socket.js +212 -0
  8. package/dist/cjs/Socket.js.map +1 -0
  9. package/dist/cjs/index.js +5 -1
  10. package/dist/cjs/internal/http/serverRequest.js +15 -1
  11. package/dist/cjs/internal/http/serverRequest.js.map +1 -1
  12. package/dist/cjs/internal/platformLogger.js +46 -0
  13. package/dist/cjs/internal/platformLogger.js.map +1 -0
  14. package/dist/cjs/internal/worker.js.map +1 -1
  15. package/dist/dts/Http/ServerRequest.d.ts +14 -0
  16. package/dist/dts/Http/ServerRequest.d.ts.map +1 -1
  17. package/dist/dts/PlatformLogger.d.ts +41 -0
  18. package/dist/dts/PlatformLogger.d.ts.map +1 -0
  19. package/dist/dts/Socket.d.ts +111 -0
  20. package/dist/dts/Socket.d.ts.map +1 -0
  21. package/dist/dts/index.d.ts +8 -0
  22. package/dist/dts/index.d.ts.map +1 -1
  23. package/dist/dts/internal/platformLogger.d.ts +2 -0
  24. package/dist/dts/internal/platformLogger.d.ts.map +1 -0
  25. package/dist/esm/Http/ServerRequest.js +10 -0
  26. package/dist/esm/Http/ServerRequest.js.map +1 -1
  27. package/dist/esm/PlatformLogger.js +26 -0
  28. package/dist/esm/PlatformLogger.js.map +1 -0
  29. package/dist/esm/Socket.js +166 -0
  30. package/dist/esm/Socket.js.map +1 -0
  31. package/dist/esm/index.js +8 -0
  32. package/dist/esm/index.js.map +1 -1
  33. package/dist/esm/internal/http/serverRequest.js +13 -0
  34. package/dist/esm/internal/http/serverRequest.js.map +1 -1
  35. package/dist/esm/internal/platformLogger.js +15 -0
  36. package/dist/esm/internal/platformLogger.js.map +1 -0
  37. package/dist/esm/internal/worker.js.map +1 -1
  38. package/package.json +20 -3
  39. package/src/Http/ServerRequest.ts +25 -0
  40. package/src/PlatformLogger.ts +59 -0
  41. package/src/Socket.ts +291 -0
  42. package/src/index.ts +10 -0
  43. package/src/internal/http/serverRequest.ts +16 -0
  44. package/src/internal/platformLogger.ts +42 -0
  45. package/src/internal/worker.ts +5 -1
@@ -1,3 +1,4 @@
1
+ import * as Channel from "effect/Channel";
1
2
  import * as Context from "effect/Context";
2
3
  import * as Effect from "effect/Effect";
3
4
  import * as Option from "effect/Option";
@@ -7,11 +8,16 @@ import * as IncomingMessage from "../../Http/IncomingMessage.js";
7
8
  import * as Multipart from "../../Http/Multipart.js";
8
9
  import * as Error from "../../Http/ServerError.js";
9
10
  import * as UrlParams from "../../Http/UrlParams.js";
11
+ import * as Socket from "../../Socket.js";
10
12
  /** @internal */
11
13
  export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/ServerRequest");
12
14
  /** @internal */
13
15
  export const serverRequestTag = /*#__PURE__*/Context.GenericTag("@effect/platform/Http/ServerRequest");
14
16
  /** @internal */
17
+ export const upgrade = /*#__PURE__*/Effect.flatMap(serverRequestTag, request => request.upgrade);
18
+ /** @internal */
19
+ export const upgradeChannel = () => Channel.unwrap(Effect.map(upgrade, Socket.toChannelWith()));
20
+ /** @internal */
15
21
  export const multipartPersisted = /*#__PURE__*/Effect.flatMap(serverRequestTag, request => request.multipart);
16
22
  /** @internal */
17
23
  export const schemaHeaders = schema => {
@@ -165,5 +171,12 @@ class ServerRequestImpl {
165
171
  })));
166
172
  return this.arrayBufferEffect;
167
173
  }
174
+ get upgrade() {
175
+ return Effect.fail(Error.RequestError({
176
+ request: this,
177
+ reason: "Decode",
178
+ error: "Not an upgradeable ServerRequest"
179
+ }));
180
+ }
168
181
  }
169
182
  //# sourceMappingURL=serverRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverRequest.js","names":["Context","Effect","Option","Stream","Headers","IncomingMessage","Multipart","Error","UrlParams","TypeId","Symbol","for","serverRequestTag","GenericTag","multipartPersisted","flatMap","request","multipart","schemaHeaders","schema","parse","schemaBodyJson","isMultipart","headers","toLowerCase","includes","schemaBodyForm","parseMultipart","schemaPersisted","parseUrlParams","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","schemaJson","field","mapError","error","RequestError","reason","urlParamsBody","fromWeb","ServerRequestImpl","url","source","headersOverride","remoteAddressOverride","constructor","modify","options","remoteAddress","method","toUpperCase","originalUrl","some","none","fromInput","stream","body","fromReadableStream","_","fail","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","URLSearchParams","multipartEffect","toPersisted","multipartStream","pipeThroughChannel","MultipartError","makeChannel","arrayBufferEffect","arrayBuffer"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"serverRequest.js","names":["Channel","Context","Effect","Option","Stream","Headers","IncomingMessage","Multipart","Error","UrlParams","Socket","TypeId","Symbol","for","serverRequestTag","GenericTag","upgrade","flatMap","request","upgradeChannel","unwrap","map","toChannelWith","multipartPersisted","multipart","schemaHeaders","schema","parse","schemaBodyJson","isMultipart","headers","toLowerCase","includes","schemaBodyForm","parseMultipart","schemaPersisted","parseUrlParams","schemaBodyUrlParams","schemaBodyMultipart","schemaBodyFormJson","schemaJson","field","mapError","error","RequestError","reason","urlParamsBody","fromWeb","ServerRequestImpl","url","source","headersOverride","remoteAddressOverride","constructor","modify","options","remoteAddress","method","toUpperCase","originalUrl","some","none","fromInput","stream","body","fromReadableStream","_","fail","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","URLSearchParams","multipartEffect","toPersisted","multipartStream","pipeThroughChannel","MultipartError","makeChannel","arrayBufferEffect","arrayBuffer"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import * as Effect from "effect/Effect";
2
+ import { dual } from "effect/Function";
3
+ import * as Logger from "effect/Logger";
4
+ import * as FileSystem from "../FileSystem.js";
5
+ /** @internal */
6
+ export const toFile = /*#__PURE__*/dual(args => Logger.isLogger(args[0]), (self, path, options) => Effect.gen(function* (_) {
7
+ const fs = yield* _(FileSystem.FileSystem);
8
+ const logFile = yield* _(fs.open(path, {
9
+ flag: "a+",
10
+ ...options
11
+ }));
12
+ const encoder = new TextEncoder();
13
+ return yield* _(Logger.batched(self, options?.batchWindow ?? 1000, output => Effect.ignore(logFile.write(encoder.encode(output.join("\n") + "\n")))));
14
+ }));
15
+ //# sourceMappingURL=platformLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platformLogger.js","names":["Effect","dual","Logger","FileSystem","toFile","args","isLogger","self","path","options","gen","_","fs","logFile","open","flag","encoder","TextEncoder","batched","batchWindow","output","ignore","write","encode","join"],"sources":["../../../src/internal/platformLogger.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,SAASC,IAAI,QAAQ,iBAAiB;AACtC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAGvC,OAAO,KAAKC,UAAU,MAAM,kBAAkB;AAE9C;AACA,OAAO,MAAMC,MAAM,gBAAGH,IAAI,CAiBvBI,IAAI,IAAKH,MAAM,CAACI,QAAQ,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAClC,CAACE,IAAI,EAAEC,IAAI,EAAEC,OAAO,KAClBT,MAAM,CAACU,GAAG,CAAC,WAAUC,CAAC;EACpB,MAAMC,EAAE,GAAG,OAAOD,CAAC,CAACR,UAAU,CAACA,UAAU,CAAC;EAC1C,MAAMU,OAAO,GAAG,OAAOF,CAAC,CAACC,EAAE,CAACE,IAAI,CAACN,IAAI,EAAE;IAAEO,IAAI,EAAE,IAAI;IAAE,GAAGN;EAAO,CAAE,CAAC,CAAC;EACnE,MAAMO,OAAO,GAAG,IAAIC,WAAW,EAAE;EACjC,OAAO,OAAON,CAAC,CAACT,MAAM,CAACgB,OAAO,CAC5BX,IAAI,EACJE,OAAO,EAAEU,WAAW,IAAI,IAAI,EAC3BC,MAAM,IAAKpB,MAAM,CAACqB,MAAM,CAACR,OAAO,CAACS,KAAK,CAACN,OAAO,CAACO,MAAM,CAACH,MAAM,CAACI,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CACnF,CAAC;AACJ,CAAC,CAAC,CACL"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","names":["Schema","Serializable","Tracer","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","identity","pipe","Layer","Option","Pool","Queue","ReadonlyArray","Schedule","Stream","Transferable","WorkerError","defaultQueue","map","unbounded","queue","offer","id","item","span","take","shutdown","PlatformWorkerTypeId","Symbol","for","PlatformWorker","GenericTag","WorkerManagerTypeId","WorkerManager","Spawner","makeManager","gen","_","platform","idCounter","of","spawn","encode","initialMessage","permits","transfers","requestIdCounter","semaphore","makeSemaphore","requestMap","Map","sendQueue","acquireRelease","collector","unsafeMakeCollector","wrappedEncode","message","zipRight","clear","provideService","Collector","succeed","outbound","addFinalizer","readyLatch","make","backing","send","flatMap","forever","msg","complete","unit","handleMessage","all","join","fiber","await","concurrency","scoped","onError","cause","forEach","values","failCause","retry","exponential","union","spaced","annotateLogs","package","module","interruptible","forkScoped","empty","discard","sync","response","suspend","get","length","fail","decodeCause","executeAcquire","request","tap","serviceOption","ParentSpan","filter","_tag","deferred","set","executeRelease","exit","release","delete","isFailure","execute","loop","match","onFailure","isEmpty","onSuccess","value","write","unsafeFromArray","fromChannel","executeEffect","acquireUseRelease","unsafeGet","result","transferables","spanTuple","getOrUndefined","traceId","spanId","sampled","payload","unsafeRead","catchAllCause","ensuring","fork","mapError","error","reason","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","makeWithTTL","min","minSize","max","maxSize","timeToLive","size","pool","broadcast","unwrap","makePoolLayer","tag","makeSerialized","serialize","parseSuccess","decode","successSchema","parseFailure","failureSchema","catchAll","mapEffect","matchEffect","makePoolSerialized","makePoolSerializedLayer","layerSpawner","spawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","names":["Schema","Serializable","Tracer","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","identity","pipe","Layer","Option","Pool","Queue","ReadonlyArray","Schedule","Stream","Transferable","WorkerError","defaultQueue","map","unbounded","queue","offer","id","item","span","take","shutdown","PlatformWorkerTypeId","Symbol","for","PlatformWorker","GenericTag","WorkerManagerTypeId","WorkerManager","Spawner","makeManager","gen","_","platform","idCounter","of","spawn","encode","initialMessage","permits","transfers","requestIdCounter","semaphore","makeSemaphore","requestMap","Map","sendQueue","acquireRelease","collector","unsafeMakeCollector","wrappedEncode","message","zipRight","clear","provideService","Collector","succeed","outbound","addFinalizer","readyLatch","make","backing","send","flatMap","forever","msg","complete","unit","handleMessage","all","join","fiber","await","concurrency","scoped","onError","cause","forEach","values","failCause","retry","exponential","union","spaced","annotateLogs","package","module","interruptible","forkScoped","empty","discard","sync","response","suspend","get","length","fail","decodeCause","executeAcquire","request","tap","serviceOption","ParentSpan","filter","_tag","deferred","set","executeRelease","exit","release","delete","isFailure","execute","loop","match","onFailure","isEmpty","onSuccess","value","write","unsafeFromArray","fromChannel","executeEffect","acquireUseRelease","unsafeGet","result","transferables","spanTuple","getOrUndefined","traceId","spanId","sampled","payload","unsafeRead","catchAllCause","ensuring","fork","mapError","error","reason","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","makeWithTTL","min","minSize","max","maxSize","timeToLive","size","pool","broadcast","unwrap","makePoolLayer","tag","makeSerialized","serialize","parseSuccess","decode","successSchema","parseFailure","failureSchema","catchAll","mapEffect","matchEffect","makePoolSerialized","makePoolSerializedLayer","layerSpawner","spawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.46.3",
3
+ "version": "0.47.0",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -11,12 +11,13 @@
11
11
  "sideEffects": [],
12
12
  "dependencies": {
13
13
  "find-my-way-ts": "^0.1.1",
14
+ "isomorphic-ws": "^5.0.0",
14
15
  "multipasta": "^0.1.21",
15
16
  "path-browserify": "^1.0.1"
16
17
  },
17
18
  "peerDependencies": {
18
- "effect": "^2.4.1",
19
- "@effect/schema": "^0.63.2"
19
+ "@effect/schema": "^0.63.3",
20
+ "effect": "^2.4.2"
20
21
  },
21
22
  "main": "./dist/cjs/index.js",
22
23
  "module": "./dist/esm/index.js",
@@ -173,11 +174,21 @@
173
174
  "import": "./dist/esm/Path.js",
174
175
  "default": "./dist/cjs/Path.js"
175
176
  },
177
+ "./PlatformLogger": {
178
+ "types": "./dist/dts/PlatformLogger.d.ts",
179
+ "import": "./dist/esm/PlatformLogger.js",
180
+ "default": "./dist/cjs/PlatformLogger.js"
181
+ },
176
182
  "./Runtime": {
177
183
  "types": "./dist/dts/Runtime.d.ts",
178
184
  "import": "./dist/esm/Runtime.js",
179
185
  "default": "./dist/cjs/Runtime.js"
180
186
  },
187
+ "./Socket": {
188
+ "types": "./dist/dts/Socket.d.ts",
189
+ "import": "./dist/esm/Socket.js",
190
+ "default": "./dist/cjs/Socket.js"
191
+ },
181
192
  "./Template": {
182
193
  "types": "./dist/dts/Template.d.ts",
183
194
  "import": "./dist/esm/Template.js",
@@ -298,9 +309,15 @@
298
309
  "Path": [
299
310
  "./dist/dts/Path.d.ts"
300
311
  ],
312
+ "PlatformLogger": [
313
+ "./dist/dts/PlatformLogger.d.ts"
314
+ ],
301
315
  "Runtime": [
302
316
  "./dist/dts/Runtime.d.ts"
303
317
  ],
318
+ "Socket": [
319
+ "./dist/dts/Socket.d.ts"
320
+ ],
304
321
  "Template": [
305
322
  "./dist/dts/Template.d.ts"
306
323
  ],
@@ -3,6 +3,8 @@
3
3
  */
4
4
  import type * as ParseResult from "@effect/schema/ParseResult"
5
5
  import type * as Schema from "@effect/schema/Schema"
6
+ import type { Channel } from "effect/Channel"
7
+ import type { Chunk } from "effect/Chunk"
6
8
  import type * as Context from "effect/Context"
7
9
  import type * as Effect from "effect/Effect"
8
10
  import type * as Scope from "effect/Scope"
@@ -10,6 +12,7 @@ import type * as Stream from "effect/Stream"
10
12
  import type * as FileSystem from "../FileSystem.js"
11
13
  import * as internal from "../internal/http/serverRequest.js"
12
14
  import type * as Path from "../Path.js"
15
+ import type * as Socket from "../Socket.js"
13
16
  import type * as Headers from "./Headers.js"
14
17
  import type * as IncomingMessage from "./IncomingMessage.js"
15
18
  import type { Method } from "./Method.js"
@@ -54,6 +57,8 @@ export interface ServerRequest extends IncomingMessage.IncomingMessage<Error.Req
54
57
  >
55
58
  readonly multipartStream: Stream.Stream<Multipart.Part, Multipart.MultipartError>
56
59
 
60
+ readonly upgrade: Effect.Effect<Socket.Socket, Error.RequestError>
61
+
57
62
  readonly modify: (
58
63
  options: {
59
64
  readonly url?: string
@@ -79,6 +84,26 @@ export const persistedMultipart: Effect.Effect<
79
84
  Scope.Scope | FileSystem.FileSystem | Path.Path | ServerRequest
80
85
  > = internal.multipartPersisted
81
86
 
87
+ /**
88
+ * @since 1.0.0
89
+ * @category accessors
90
+ */
91
+ export const upgrade: Effect.Effect<Socket.Socket, Error.RequestError, ServerRequest> = internal.upgrade
92
+
93
+ /**
94
+ * @since 1.0.0
95
+ * @category accessors
96
+ */
97
+ export const upgradeChannel: <IE = never>() => Channel<
98
+ Chunk<Uint8Array>,
99
+ Chunk<Uint8Array>,
100
+ Error.RequestError | IE | Socket.SocketError,
101
+ IE,
102
+ void,
103
+ unknown,
104
+ ServerRequest
105
+ > = internal.upgradeChannel
106
+
82
107
  /**
83
108
  * @since 1.0.0
84
109
  * @category schema
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { DurationInput } from "effect/Duration"
5
+ import type { Effect } from "effect/Effect"
6
+ import type * as Logger from "effect/Logger"
7
+ import type { Scope } from "effect/Scope"
8
+ import type { PlatformError } from "./Error.js"
9
+ import type { FileSystem, OpenFileOptions } from "./FileSystem.js"
10
+ import * as internal from "./internal/platformLogger.js"
11
+
12
+ /**
13
+ * Create a Logger from another string Logger that writes to the specified file.
14
+ *
15
+ * @since 1.0.0
16
+ * @example
17
+ * import { PlatformLogger } from "@effect/platform"
18
+ * import { NodeFileSystem, NodeRuntime } from "@effect/platform-node"
19
+ * import { Effect, Layer, Logger } from "effect"
20
+ *
21
+ * const fileLogger = Logger.logfmtLogger.pipe(
22
+ * PlatformLogger.toFile("log.txt")
23
+ * )
24
+ * const LoggerLive = Logger.replaceScoped(Logger.defaultLogger, fileLogger).pipe(
25
+ * Layer.provide(NodeFileSystem.layer)
26
+ * )
27
+ *
28
+ * Effect.log("a").pipe(
29
+ * Effect.zipRight(Effect.log("b")),
30
+ * Effect.zipRight(Effect.log("c")),
31
+ * Effect.provide(LoggerLive),
32
+ * NodeRuntime.runMain
33
+ * )
34
+ */
35
+ export const toFile: {
36
+ (
37
+ path: string,
38
+ options?:
39
+ | (OpenFileOptions & {
40
+ readonly batchWindow?:
41
+ | DurationInput
42
+ | undefined
43
+ })
44
+ | undefined
45
+ ): <Message>(
46
+ self: Logger.Logger<Message, string>
47
+ ) => Effect<Logger.Logger<Message, void>, PlatformError, Scope | FileSystem>
48
+ <Message>(
49
+ self: Logger.Logger<Message, string>,
50
+ path: string,
51
+ options?:
52
+ | (OpenFileOptions & {
53
+ readonly batchWindow?:
54
+ | DurationInput
55
+ | undefined
56
+ })
57
+ | undefined
58
+ ): Effect<Logger.Logger<Message, void>, PlatformError, Scope | FileSystem>
59
+ } = internal.toFile
package/src/Socket.ts ADDED
@@ -0,0 +1,291 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as Cause from "effect/Cause"
5
+ import * as Channel from "effect/Channel"
6
+ import * as Chunk from "effect/Chunk"
7
+ import * as Context from "effect/Context"
8
+ import * as Data from "effect/Data"
9
+ import * as Effect from "effect/Effect"
10
+ import * as Exit from "effect/Exit"
11
+ import * as FiberSet from "effect/FiberSet"
12
+ import * as Layer from "effect/Layer"
13
+ import * as Queue from "effect/Queue"
14
+ import * as Scope from "effect/Scope"
15
+ import type * as AsyncProducer from "effect/SingleProducerAsyncInput"
16
+ import IsoWebSocket from "isomorphic-ws"
17
+
18
+ /**
19
+ * @since 1.0.0
20
+ * @category type ids
21
+ */
22
+ export const SocketTypeId = Symbol.for("@effect/platform/Socket")
23
+
24
+ /**
25
+ * @since 1.0.0
26
+ * @category type ids
27
+ */
28
+ export type SocketTypeId = typeof SocketTypeId
29
+
30
+ /**
31
+ * @since 1.0.0
32
+ * @category tags
33
+ */
34
+ export const Socket: Context.Tag<Socket, Socket> = Context.GenericTag<Socket>(
35
+ "@effect/platform/Socket"
36
+ )
37
+
38
+ /**
39
+ * @since 1.0.0
40
+ * @category models
41
+ */
42
+ export interface Socket {
43
+ readonly [SocketTypeId]: SocketTypeId
44
+ readonly run: <R, E, _>(
45
+ handler: (_: Uint8Array) => Effect.Effect<_, E, R>
46
+ ) => Effect.Effect<void, SocketError | E, R>
47
+ readonly writer: Effect.Effect<(chunk: Uint8Array) => Effect.Effect<void>, never, Scope.Scope>
48
+ }
49
+
50
+ /**
51
+ * @since 1.0.0
52
+ * @category errors
53
+ */
54
+ export class SocketError extends Data.TaggedError("SocketError")<{
55
+ readonly reason: "Write" | "Read" | "Open" | "Close"
56
+ readonly error: unknown
57
+ }> {
58
+ /**
59
+ * @since 1.0.0
60
+ */
61
+ toString(): string {
62
+ return `SocketError: ${this.reason} - ${this.error}`
63
+ }
64
+ }
65
+
66
+ /**
67
+ * @since 1.0.0
68
+ * @category combinators
69
+ */
70
+ export const toChannel = <IE>(
71
+ self: Socket
72
+ ): Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown> =>
73
+ Channel.unwrap(
74
+ Effect.gen(function*(_) {
75
+ const writeScope = yield* _(Scope.make())
76
+ const write = yield* _(Scope.extend(self.writer, writeScope))
77
+ const exitQueue = yield* _(Queue.unbounded<Exit.Exit<Chunk.Chunk<Uint8Array>, SocketError | IE>>())
78
+
79
+ const input: AsyncProducer.AsyncInputProducer<IE, Chunk.Chunk<Uint8Array>, unknown> = {
80
+ awaitRead: () => Effect.unit,
81
+ emit(chunk) {
82
+ return Effect.catchAllCause(
83
+ Effect.forEach(chunk, write, { discard: true }),
84
+ (cause) => Queue.offer(exitQueue, Exit.failCause(cause))
85
+ )
86
+ },
87
+ error(error) {
88
+ return Effect.zipRight(
89
+ Scope.close(writeScope, Exit.unit),
90
+ Queue.offer(exitQueue, Exit.failCause(error))
91
+ )
92
+ },
93
+ done() {
94
+ return Scope.close(writeScope, Exit.unit)
95
+ }
96
+ }
97
+
98
+ yield* _(
99
+ self.run((data) => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))),
100
+ Effect.zipRight(Effect.failCause(Cause.empty)),
101
+ Effect.exit,
102
+ Effect.tap((exit) => Queue.offer(exitQueue, exit)),
103
+ Effect.fork
104
+ )
105
+
106
+ const loop: Channel.Channel<Chunk.Chunk<Uint8Array>, unknown, SocketError | IE, unknown, void, unknown> = Channel
107
+ .flatMap(
108
+ Queue.take(exitQueue),
109
+ Exit.match({
110
+ onFailure: (cause) => Cause.isEmptyType(cause) ? Channel.unit : Channel.failCause(cause),
111
+ onSuccess: (chunk) => Channel.zipRight(Channel.write(chunk), loop)
112
+ })
113
+ )
114
+
115
+ return Channel.embedInput(loop, input)
116
+ })
117
+ )
118
+
119
+ /**
120
+ * @since 1.0.0
121
+ * @category combinators
122
+ */
123
+ export const toChannelWith = <IE = never>() =>
124
+ (
125
+ self: Socket
126
+ ): Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown> =>
127
+ toChannel(self)
128
+
129
+ /**
130
+ * @since 1.0.0
131
+ * @category constructors
132
+ */
133
+ export const makeChannel = <IE = never>(): Channel.Channel<
134
+ Chunk.Chunk<Uint8Array>,
135
+ Chunk.Chunk<Uint8Array>,
136
+ SocketError | IE,
137
+ IE,
138
+ void,
139
+ unknown,
140
+ Socket
141
+ > => Channel.unwrap(Effect.map(Socket, toChannelWith<IE>()))
142
+
143
+ /**
144
+ * @since 1.0.0
145
+ */
146
+ export const defaultCloseCodeIsError = (code: number) => code !== 1000 && code !== 1006
147
+
148
+ /**
149
+ * @since 1.0.0
150
+ * @category tags
151
+ */
152
+ export interface WebSocket {
153
+ readonly _: unique symbol
154
+ }
155
+
156
+ /**
157
+ * @since 1.0.0
158
+ * @category tags
159
+ */
160
+ export const WebSocket: Context.Tag<WebSocket, globalThis.WebSocket> = Context.GenericTag(
161
+ "@effect/platform/Socket/WebSocket"
162
+ )
163
+
164
+ /**
165
+ * @since 1.0.0
166
+ * @category constructors
167
+ */
168
+ export const makeWebSocket = (url: string | Effect.Effect<string>, options?: {
169
+ readonly closeCodeIsError?: (code: number) => boolean
170
+ }): Effect.Effect<Socket> =>
171
+ fromWebSocket(
172
+ Effect.acquireRelease(
173
+ Effect.map(
174
+ typeof url === "string" ? Effect.succeed(url) : url,
175
+ (url) => {
176
+ const WS = "WebSocket" in globalThis ? globalThis.WebSocket : IsoWebSocket
177
+ return new WS(url) as globalThis.WebSocket
178
+ }
179
+ ),
180
+ (ws) => Effect.sync(() => ws.close())
181
+ ),
182
+ options
183
+ )
184
+
185
+ /**
186
+ * @since 1.0.0
187
+ * @category constructors
188
+ */
189
+ export const fromWebSocket = (
190
+ acquire: Effect.Effect<globalThis.WebSocket, SocketError, Scope.Scope>,
191
+ options?: {
192
+ readonly closeCodeIsError?: (code: number) => boolean
193
+ }
194
+ ): Effect.Effect<Socket> =>
195
+ Effect.gen(function*(_) {
196
+ const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError
197
+ const sendQueue = yield* _(Queue.unbounded<Uint8Array>())
198
+
199
+ const run = <R, E, _>(handler: (_: Uint8Array) => Effect.Effect<_, E, R>) =>
200
+ Effect.gen(function*(_) {
201
+ const ws = yield* _(acquire)
202
+ const encoder = new TextEncoder()
203
+ const fiberSet = yield* _(FiberSet.make<any, E | SocketError>())
204
+ const run = yield* _(
205
+ FiberSet.runtime(fiberSet)<R>(),
206
+ Effect.provideService(WebSocket, ws)
207
+ )
208
+
209
+ ws.onmessage = (event) => {
210
+ run(
211
+ handler(
212
+ event.data instanceof Uint8Array
213
+ ? event.data
214
+ : typeof event.data === "string"
215
+ ? encoder.encode(event.data)
216
+ : new Uint8Array(event.data)
217
+ )
218
+ )
219
+ }
220
+
221
+ if (ws.readyState !== IsoWebSocket.OPEN) {
222
+ yield* _(Effect.async<void, SocketError, never>((resume) => {
223
+ ws.onopen = () => {
224
+ resume(Effect.unit)
225
+ }
226
+ ws.onerror = (error_) => {
227
+ resume(Effect.fail(new SocketError({ reason: "Open", error: (error_ as any).message })))
228
+ }
229
+ }))
230
+ }
231
+
232
+ yield* _(
233
+ Queue.take(sendQueue),
234
+ Effect.tap((chunk) =>
235
+ Effect.try({
236
+ try: () => ws.send(chunk),
237
+ catch: (error) => Effect.fail(new SocketError({ reason: "Write", error: (error as any).message }))
238
+ })
239
+ ),
240
+ Effect.forever,
241
+ Effect.fork
242
+ )
243
+
244
+ yield* _(
245
+ Effect.async<void, SocketError, never>((resume) => {
246
+ ws.onclose = (event) => {
247
+ if (closeCodeIsError(event.code)) {
248
+ resume(Effect.fail(new SocketError({ reason: "Close", error: event })))
249
+ } else {
250
+ resume(Effect.unit)
251
+ }
252
+ }
253
+ ws.onerror = (error) => {
254
+ resume(Effect.fail(new SocketError({ reason: "Read", error: (error as any).message })))
255
+ }
256
+ }),
257
+ Effect.raceFirst(FiberSet.join(fiberSet))
258
+ )
259
+ }).pipe(Effect.scoped)
260
+
261
+ const write = (chunk: Uint8Array) => Queue.offer(sendQueue, chunk)
262
+ const writer = Effect.succeed(write)
263
+
264
+ return Socket.of({
265
+ [SocketTypeId]: SocketTypeId,
266
+ run,
267
+ writer
268
+ })
269
+ })
270
+
271
+ /**
272
+ * @since 1.0.0
273
+ * @category constructors
274
+ */
275
+ export const makeWebSocketChannel = <IE = never>(
276
+ url: string,
277
+ options?: {
278
+ readonly closeCodeIsError?: (code: number) => boolean
279
+ }
280
+ ): Channel.Channel<Chunk.Chunk<Uint8Array>, Chunk.Chunk<Uint8Array>, SocketError | IE, IE, void, unknown> =>
281
+ Channel.unwrapScoped(
282
+ Effect.map(makeWebSocket(url, options), toChannelWith<IE>())
283
+ )
284
+
285
+ /**
286
+ * @since 1.0.0
287
+ * @category layers
288
+ */
289
+ export const layerWebSocket = (url: string, options?: {
290
+ readonly closeCodeIsError?: (code: number) => boolean
291
+ }): Layer.Layer<Socket> => Layer.scoped(Socket, makeWebSocket(url, options))