@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.
- package/PlatformLogger/package.json +6 -0
- package/Socket/package.json +6 -0
- package/dist/cjs/Http/ServerRequest.js +11 -1
- package/dist/cjs/Http/ServerRequest.js.map +1 -1
- package/dist/cjs/PlatformLogger.js +57 -0
- package/dist/cjs/PlatformLogger.js.map +1 -0
- package/dist/cjs/Socket.js +212 -0
- package/dist/cjs/Socket.js.map +1 -0
- package/dist/cjs/index.js +5 -1
- package/dist/cjs/internal/http/serverRequest.js +15 -1
- package/dist/cjs/internal/http/serverRequest.js.map +1 -1
- package/dist/cjs/internal/platformLogger.js +46 -0
- package/dist/cjs/internal/platformLogger.js.map +1 -0
- package/dist/cjs/internal/worker.js.map +1 -1
- package/dist/dts/Http/ServerRequest.d.ts +14 -0
- package/dist/dts/Http/ServerRequest.d.ts.map +1 -1
- package/dist/dts/PlatformLogger.d.ts +41 -0
- package/dist/dts/PlatformLogger.d.ts.map +1 -0
- package/dist/dts/Socket.d.ts +111 -0
- package/dist/dts/Socket.d.ts.map +1 -0
- package/dist/dts/index.d.ts +8 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/platformLogger.d.ts +2 -0
- package/dist/dts/internal/platformLogger.d.ts.map +1 -0
- package/dist/esm/Http/ServerRequest.js +10 -0
- package/dist/esm/Http/ServerRequest.js.map +1 -1
- package/dist/esm/PlatformLogger.js +26 -0
- package/dist/esm/PlatformLogger.js.map +1 -0
- package/dist/esm/Socket.js +166 -0
- package/dist/esm/Socket.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/http/serverRequest.js +13 -0
- package/dist/esm/internal/http/serverRequest.js.map +1 -1
- package/dist/esm/internal/platformLogger.js +15 -0
- package/dist/esm/internal/platformLogger.js.map +1 -0
- package/dist/esm/internal/worker.js.map +1 -1
- package/package.json +20 -3
- package/src/Http/ServerRequest.ts +25 -0
- package/src/PlatformLogger.ts +59 -0
- package/src/Socket.ts +291 -0
- package/src/index.ts +10 -0
- package/src/internal/http/serverRequest.ts +16 -0
- package/src/internal/platformLogger.ts +42 -0
- 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","
|
|
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.
|
|
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": "^
|
|
19
|
-
"
|
|
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))
|