@effect/platform-node-shared 4.0.0-beta.7 → 4.0.0-beta.71
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/dist/NodeChildProcessSpawner.d.ts +18 -4
- package/dist/NodeChildProcessSpawner.d.ts.map +1 -1
- package/dist/NodeChildProcessSpawner.js +76 -17
- package/dist/NodeChildProcessSpawner.js.map +1 -1
- package/dist/NodeClusterSocket.d.ts +10 -4
- package/dist/NodeClusterSocket.d.ts.map +1 -1
- package/dist/NodeClusterSocket.js +46 -8
- package/dist/NodeClusterSocket.js.map +1 -1
- package/dist/NodeCrypto.d.ts +42 -0
- package/dist/NodeCrypto.d.ts.map +1 -0
- package/dist/NodeCrypto.js +70 -0
- package/dist/NodeCrypto.js.map +1 -0
- package/dist/NodeFileSystem.d.ts +5 -2
- package/dist/NodeFileSystem.d.ts.map +1 -1
- package/dist/NodeFileSystem.js +56 -26
- package/dist/NodeFileSystem.js.map +1 -1
- package/dist/NodePath.d.ts +15 -6
- package/dist/NodePath.d.ts.map +1 -1
- package/dist/NodePath.js +39 -7
- package/dist/NodePath.js.map +1 -1
- package/dist/NodeRuntime.d.ts +48 -7
- package/dist/NodeRuntime.d.ts.map +1 -1
- package/dist/NodeRuntime.js +8 -8
- package/dist/NodeRuntime.js.map +1 -1
- package/dist/NodeSink.d.ts +49 -4
- package/dist/NodeSink.d.ts.map +1 -1
- package/dist/NodeSink.js +23 -4
- package/dist/NodeSink.js.map +1 -1
- package/dist/NodeSocket.d.ts +50 -9
- package/dist/NodeSocket.d.ts.map +1 -1
- package/dist/NodeSocket.js +31 -15
- package/dist/NodeSocket.js.map +1 -1
- package/dist/NodeSocketServer.d.ts +24 -7
- package/dist/NodeSocketServer.d.ts.map +1 -1
- package/dist/NodeSocketServer.js +28 -11
- package/dist/NodeSocketServer.js.map +1 -1
- package/dist/NodeStdio.d.ts +6 -5
- package/dist/NodeStdio.d.ts.map +1 -1
- package/dist/NodeStdio.js +46 -7
- package/dist/NodeStdio.js.map +1 -1
- package/dist/NodeStream.d.ts +93 -20
- package/dist/NodeStream.d.ts.map +1 -1
- package/dist/NodeStream.js +85 -23
- package/dist/NodeStream.js.map +1 -1
- package/dist/NodeTerminal.d.ts +9 -2
- package/dist/NodeTerminal.d.ts.map +1 -1
- package/dist/NodeTerminal.js +13 -3
- package/dist/NodeTerminal.js.map +1 -1
- package/dist/index.d.ts +52 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/package.json +7 -6
- package/src/NodeChildProcessSpawner.ts +116 -28
- package/src/NodeClusterSocket.ts +46 -8
- package/src/NodeCrypto.ts +75 -0
- package/src/NodeFileSystem.ts +63 -28
- package/src/NodePath.ts +39 -7
- package/src/NodeRuntime.ts +50 -13
- package/src/NodeSink.ts +56 -4
- package/src/NodeSocket.ts +56 -16
- package/src/NodeSocketServer.ts +64 -12
- package/src/NodeStdio.ts +64 -23
- package/src/NodeStream.ts +106 -30
- package/src/NodeTerminal.ts +44 -4
- package/src/index.ts +65 -0
package/dist/NodeFileSystem.js
CHANGED
|
@@ -1,5 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Shared Node-compatible implementation of Effect's `FileSystem` service.
|
|
3
|
+
*
|
|
4
|
+
* This module adapts Node's `node:fs`, `node:os`, and `node:path` APIs into a
|
|
5
|
+
* `FileSystem` layer for Effect programs running on Node-compatible runtimes.
|
|
6
|
+
* Platform packages use it to provide file and directory I/O, permissions,
|
|
7
|
+
* links, metadata, temporary files and directories, and file watching through
|
|
8
|
+
* the shared `FileSystem` service.
|
|
9
|
+
*
|
|
10
|
+
* **Mental model**
|
|
11
|
+
*
|
|
12
|
+
* {@link layer} installs a process-backed `FileSystem` service. Each operation
|
|
13
|
+
* delegates to the corresponding Node filesystem API, then maps Node failures
|
|
14
|
+
* into `PlatformError` values and invalid arguments into `BadArgument` failures.
|
|
15
|
+
* Paths keep Node's normal behavior: relative paths resolve from the current
|
|
16
|
+
* working directory and platform path rules still apply.
|
|
17
|
+
*
|
|
18
|
+
* **Common tasks**
|
|
19
|
+
*
|
|
20
|
+
* Provide {@link layer} at the Node runtime boundary, then depend on the
|
|
21
|
+
* `FileSystem` service from application code. Use the service for ordinary
|
|
22
|
+
* reads and writes, directory management, metadata inspection, links, temporary
|
|
23
|
+
* resources, and file watching without importing Node's `fs` APIs directly.
|
|
24
|
+
*
|
|
25
|
+
* **Gotchas**
|
|
26
|
+
*
|
|
27
|
+
* Open files are scoped resources with tracked read and write positions; append
|
|
28
|
+
* mode lets the operating system choose the write offset. File watching follows
|
|
29
|
+
* `node:fs.watch` semantics unless a custom watch backend is supplied, so
|
|
30
|
+
* recursive support, event coalescing, and reported paths vary by runtime and
|
|
31
|
+
* platform.
|
|
32
|
+
*
|
|
33
|
+
* @since 4.0.0
|
|
3
34
|
*/
|
|
4
35
|
import * as Cause from "effect/Cause";
|
|
5
36
|
import * as Effect from "effect/Effect";
|
|
@@ -120,7 +151,7 @@ const makeFile = /*#__PURE__*/(() => {
|
|
|
120
151
|
[FileSystem.FileTypeId];
|
|
121
152
|
fd;
|
|
122
153
|
append;
|
|
123
|
-
position =
|
|
154
|
+
position = /*#__PURE__*/BigInt(0);
|
|
124
155
|
constructor(fd, append) {
|
|
125
156
|
this[FileSystem.FileTypeId] = FileSystem.FileTypeId;
|
|
126
157
|
this.fd = fd;
|
|
@@ -166,15 +197,15 @@ const makeFile = /*#__PURE__*/(() => {
|
|
|
166
197
|
position
|
|
167
198
|
}), bytesRead => {
|
|
168
199
|
if (bytesRead === 0) {
|
|
169
|
-
return
|
|
200
|
+
return Option.none();
|
|
170
201
|
}
|
|
171
202
|
this.position = position + BigInt(bytesRead);
|
|
172
203
|
if (bytesRead === sizeNumber) {
|
|
173
|
-
return buffer;
|
|
204
|
+
return Option.some(buffer);
|
|
174
205
|
}
|
|
175
206
|
const dst = Buffer.allocUnsafeSlow(bytesRead);
|
|
176
207
|
buffer.copy(dst, 0, 0, bytesRead);
|
|
177
|
-
return dst;
|
|
208
|
+
return Option.some(dst);
|
|
178
209
|
});
|
|
179
210
|
});
|
|
180
211
|
}
|
|
@@ -285,19 +316,19 @@ const rename = /*#__PURE__*/(() => {
|
|
|
285
316
|
// == stat
|
|
286
317
|
const makeFileInfo = stat => ({
|
|
287
318
|
type: stat.isFile() ? "File" : stat.isDirectory() ? "Directory" : stat.isSymbolicLink() ? "SymbolicLink" : stat.isBlockDevice() ? "BlockDevice" : stat.isCharacterDevice() ? "CharacterDevice" : stat.isFIFO() ? "FIFO" : stat.isSocket() ? "Socket" : "Unknown",
|
|
288
|
-
mtime: stat.mtime,
|
|
289
|
-
atime: stat.atime,
|
|
290
|
-
birthtime: stat.birthtime,
|
|
319
|
+
mtime: Option.fromNullishOr(stat.mtime),
|
|
320
|
+
atime: Option.fromNullishOr(stat.atime),
|
|
321
|
+
birthtime: Option.fromNullishOr(stat.birthtime),
|
|
291
322
|
dev: stat.dev,
|
|
292
|
-
rdev: stat.rdev,
|
|
293
|
-
ino: stat.ino,
|
|
323
|
+
rdev: Option.fromNullishOr(stat.rdev),
|
|
324
|
+
ino: Option.fromNullishOr(stat.ino),
|
|
294
325
|
mode: stat.mode,
|
|
295
|
-
nlink: stat.nlink,
|
|
296
|
-
uid: stat.uid,
|
|
297
|
-
gid: stat.gid,
|
|
326
|
+
nlink: Option.fromNullishOr(stat.nlink),
|
|
327
|
+
uid: Option.fromNullishOr(stat.uid),
|
|
328
|
+
gid: Option.fromNullishOr(stat.gid),
|
|
298
329
|
size: FileSystem.Size(stat.size),
|
|
299
|
-
blksize: FileSystem.Size(stat.blksize),
|
|
300
|
-
blocks: stat.blocks
|
|
330
|
+
blksize: stat.blksize !== undefined ? Option.some(FileSystem.Size(stat.blksize)) : Option.none(),
|
|
331
|
+
blocks: Option.fromNullishOr(stat.blocks)
|
|
301
332
|
});
|
|
302
333
|
const stat = /*#__PURE__*/(() => {
|
|
303
334
|
const nodeStat = /*#__PURE__*/effectify(NFS.stat, /*#__PURE__*/handleErrnoException("FileSystem", "stat"), /*#__PURE__*/handleBadArgument("stat"));
|
|
@@ -320,7 +351,9 @@ const utimes = /*#__PURE__*/(() => {
|
|
|
320
351
|
})();
|
|
321
352
|
// == watch
|
|
322
353
|
const watchNode = path => Stream.callback(queue => Effect.acquireRelease(Effect.sync(() => {
|
|
323
|
-
const watcher = NFS.watch(path, {
|
|
354
|
+
const watcher = NFS.watch(path, {
|
|
355
|
+
recursive: true
|
|
356
|
+
}, (event, path) => {
|
|
324
357
|
if (!path) return;
|
|
325
358
|
switch (event) {
|
|
326
359
|
case "rename":
|
|
@@ -361,13 +394,7 @@ const watchNode = path => Stream.callback(queue => Effect.acquireRelease(Effect.
|
|
|
361
394
|
});
|
|
362
395
|
return watcher;
|
|
363
396
|
}), watcher => Effect.sync(() => watcher.close())));
|
|
364
|
-
const watch = (backend, path) => stat(path).pipe(Effect.map(stat =>
|
|
365
|
-
if (backend) {
|
|
366
|
-
const stream = backend.register(path, stat);
|
|
367
|
-
if (stream) return stream;
|
|
368
|
-
}
|
|
369
|
-
return watchNode(path);
|
|
370
|
-
}), Stream.unwrap);
|
|
397
|
+
const watch = (backend, path) => stat(path).pipe(Effect.map(stat => backend.pipe(Option.flatMap(_ => _.register(path, stat)), Option.getOrElse(() => watchNode(path)))), Stream.unwrap);
|
|
371
398
|
// == writeFile
|
|
372
399
|
const writeFile = (path, data, options) => Effect.callback((resume, signal) => {
|
|
373
400
|
try {
|
|
@@ -410,13 +437,16 @@ const makeFileSystem = /*#__PURE__*/Effect.map(/*#__PURE__*/Effect.serviceOption
|
|
|
410
437
|
truncate,
|
|
411
438
|
utimes,
|
|
412
439
|
watch(path) {
|
|
413
|
-
return watch(
|
|
440
|
+
return watch(backend, path);
|
|
414
441
|
},
|
|
415
442
|
writeFile
|
|
416
443
|
}));
|
|
417
444
|
/**
|
|
418
|
-
*
|
|
419
|
-
*
|
|
445
|
+
* Provides the `FileSystem` service backed by Node filesystem APIs, including
|
|
446
|
+
* file operations, directory operations, links, metadata, and file watching.
|
|
447
|
+
*
|
|
448
|
+
* @category layers
|
|
449
|
+
* @since 4.0.0
|
|
420
450
|
*/
|
|
421
451
|
export const layer = /*#__PURE__*/Layer.effect(FileSystem.FileSystem)(makeFileSystem);
|
|
422
452
|
//# sourceMappingURL=NodeFileSystem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeFileSystem.js","names":["Cause","Effect","effectify","FileSystem","pipe","Layer","Option","Error","Queue","Stream","Crypto","NFS","OS","Path","handleErrnoException","handleBadArgument","method","err","badArgument","module","description","message","String","access","nodeAccess","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","flag","fd","map","makeFile","FileDescriptor","startsWith","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeSync","fsync","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","FileTypeId","append","position","constructor","stat","makeFileInfo","sync","seek","offset","from","offsetSize","Size","buffer","bytesRead","sizeRead","readAlloc","size","sizeNumber","Number","Buffer","allocUnsafeSlow","undefined","BigInt","dst","truncate","length","len","bytesWritten","sizeWritten","writeAllChunk","flatMap","fail","systemError","_tag","pathOrDescriptor","subarray","void","writeAll","makeTempFileFactory","fnUntraced","random","randomBytes","toString","name","suffix","writeFile","Uint8Array","makeTempFile","makeTempFileScoped","file","dirname","readDirectory","tryPromise","try","promises","readdir","catch","readFile","callback","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","watchNode","queue","watcher","watch","event","runFork","matchEffect","onSuccess","_","offer","onFailure","offerUnsafe","on","error","failCauseUnsafe","cause","endUnsafe","backend","stream","register","unwrap","makeFileSystem","serviceOption","WatchBackend","make","getOrUndefined","layer","effect"],"sources":["../src/NodeFileSystem.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"NodeFileSystem.js","names":["Cause","Effect","effectify","FileSystem","pipe","Layer","Option","Error","Queue","Stream","Crypto","NFS","OS","Path","handleErrnoException","handleBadArgument","method","err","badArgument","module","description","message","String","access","nodeAccess","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","flag","fd","map","makeFile","FileDescriptor","startsWith","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeSync","fsync","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","FileTypeId","append","position","BigInt","constructor","stat","makeFileInfo","sync","seek","offset","from","offsetSize","Size","buffer","bytesRead","sizeRead","readAlloc","size","sizeNumber","Number","Buffer","allocUnsafeSlow","none","some","dst","truncate","length","undefined","len","bytesWritten","sizeWritten","writeAllChunk","flatMap","fail","systemError","_tag","pathOrDescriptor","subarray","void","writeAll","makeTempFileFactory","fnUntraced","random","randomBytes","toString","name","suffix","writeFile","Uint8Array","makeTempFile","makeTempFileScoped","file","dirname","readDirectory","tryPromise","try","promises","readdir","catch","readFile","callback","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","fromNullishOr","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","watchNode","queue","watcher","watch","event","runFork","matchEffect","onSuccess","_","offer","onFailure","offerUnsafe","on","error","failCauseUnsafe","cause","endUnsafe","backend","register","getOrElse","unwrap","makeFileSystem","serviceOption","WatchBackend","make","layer","effect"],"sources":["../src/NodeFileSystem.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/NodePath.d.ts
CHANGED
|
@@ -1,18 +1,27 @@
|
|
|
1
1
|
import * as Layer from "effect/Layer";
|
|
2
2
|
import { Path } from "effect/Path";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Provides the `Path` service using Node's POSIX path implementation plus
|
|
5
|
+
* file URL conversion helpers.
|
|
6
|
+
*
|
|
7
|
+
* @category layers
|
|
8
|
+
* @since 4.0.0
|
|
6
9
|
*/
|
|
7
10
|
export declare const layerPosix: Layer.Layer<Path>;
|
|
8
11
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
12
|
+
* Provides the `Path` service using Node's Windows path implementation plus
|
|
13
|
+
* file URL conversion helpers.
|
|
14
|
+
*
|
|
15
|
+
* @category layers
|
|
16
|
+
* @since 4.0.0
|
|
11
17
|
*/
|
|
12
18
|
export declare const layerWin32: Layer.Layer<Path>;
|
|
13
19
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
20
|
+
* Provides the default `Path` service using the host platform's Node path
|
|
21
|
+
* implementation plus file URL conversion helpers.
|
|
22
|
+
*
|
|
23
|
+
* @category layers
|
|
24
|
+
* @since 4.0.0
|
|
16
25
|
*/
|
|
17
26
|
export declare const layer: Layer.Layer<Path>;
|
|
18
27
|
//# sourceMappingURL=NodePath.d.ts.map
|
package/dist/NodePath.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodePath.d.ts","sourceRoot":"","sources":["../src/NodePath.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NodePath.d.ts","sourceRoot":"","sources":["../src/NodePath.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,IAAI,EAAU,MAAM,aAAa,CAAA;AA2B1C;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAKvC,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAKvC,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAKlC,CAAA"}
|
package/dist/NodePath.js
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Node-backed provider for Effect's `Path` service.
|
|
3
|
+
*
|
|
4
|
+
* This module turns Node's `node:path` and `node:url` APIs into `Layer`s for
|
|
5
|
+
* programs that depend on `Path`. Use it when code should receive path
|
|
6
|
+
* operations from the Effect environment instead of importing `node:path`
|
|
7
|
+
* directly, including configuration loading, filesystem composition, and file
|
|
8
|
+
* URL conversion.
|
|
9
|
+
*
|
|
10
|
+
* **Mental model**
|
|
11
|
+
*
|
|
12
|
+
* `layer` follows the platform semantics of the current Node runtime. The
|
|
13
|
+
* `layerPosix` and `layerWin32` variants pin the syntax rules to POSIX or
|
|
14
|
+
* Windows, which is useful for deterministic parsing, formatting, and tests.
|
|
15
|
+
* All three layers include `fromFileUrl` and `toFileUrl` behavior backed by
|
|
16
|
+
* Node's URL conversion functions.
|
|
17
|
+
*
|
|
18
|
+
* **Gotchas**
|
|
19
|
+
*
|
|
20
|
+
* Path operations are syntactic: they normalize separators, roots, drive
|
|
21
|
+
* letters, UNC segments, extensions, and relative segments without checking the
|
|
22
|
+
* filesystem. File URL conversion follows Node's validation and encoding
|
|
23
|
+
* rules, and invalid conversions fail with `BadArgument`.
|
|
24
|
+
*
|
|
25
|
+
* @since 4.0.0
|
|
3
26
|
*/
|
|
4
27
|
import * as Effect from "effect/Effect";
|
|
5
28
|
import * as Layer from "effect/Layer";
|
|
@@ -24,8 +47,11 @@ const toFileUrl = path => Effect.try({
|
|
|
24
47
|
})
|
|
25
48
|
});
|
|
26
49
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
50
|
+
* Provides the `Path` service using Node's POSIX path implementation plus
|
|
51
|
+
* file URL conversion helpers.
|
|
52
|
+
*
|
|
53
|
+
* @category layers
|
|
54
|
+
* @since 4.0.0
|
|
29
55
|
*/
|
|
30
56
|
export const layerPosix = /*#__PURE__*/Layer.succeed(Path)({
|
|
31
57
|
[TypeId]: TypeId,
|
|
@@ -34,8 +60,11 @@ export const layerPosix = /*#__PURE__*/Layer.succeed(Path)({
|
|
|
34
60
|
toFileUrl
|
|
35
61
|
});
|
|
36
62
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
63
|
+
* Provides the `Path` service using Node's Windows path implementation plus
|
|
64
|
+
* file URL conversion helpers.
|
|
65
|
+
*
|
|
66
|
+
* @category layers
|
|
67
|
+
* @since 4.0.0
|
|
39
68
|
*/
|
|
40
69
|
export const layerWin32 = /*#__PURE__*/Layer.succeed(Path)({
|
|
41
70
|
[TypeId]: TypeId,
|
|
@@ -44,8 +73,11 @@ export const layerWin32 = /*#__PURE__*/Layer.succeed(Path)({
|
|
|
44
73
|
toFileUrl
|
|
45
74
|
});
|
|
46
75
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
76
|
+
* Provides the default `Path` service using the host platform's Node path
|
|
77
|
+
* implementation plus file URL conversion helpers.
|
|
78
|
+
*
|
|
79
|
+
* @category layers
|
|
80
|
+
* @since 4.0.0
|
|
49
81
|
*/
|
|
50
82
|
export const layer = /*#__PURE__*/Layer.succeed(Path)({
|
|
51
83
|
[TypeId]: TypeId,
|
package/dist/NodePath.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodePath.js","names":["Effect","Layer","Path","TypeId","BadArgument","NodePath","NodeUrl","fromFileUrl","url","try","fileURLToPath","catch","cause","module","method","toFileUrl","path","pathToFileURL","layerPosix","succeed","posix","layerWin32","win32","layer"],"sources":["../src/NodePath.ts"],"sourcesContent":[null],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"NodePath.js","names":["Effect","Layer","Path","TypeId","BadArgument","NodePath","NodeUrl","fromFileUrl","url","try","fileURLToPath","catch","cause","module","method","toFileUrl","path","pathToFileURL","layerPosix","succeed","posix","layerWin32","win32","layer"],"sources":["../src/NodePath.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,SAASC,IAAI,EAAEC,MAAM,QAAQ,aAAa;AAC1C,SAASC,WAAW,QAAQ,sBAAsB;AAClD,OAAO,KAAKC,QAAQ,MAAM,WAAW;AACrC,OAAO,KAAKC,OAAO,MAAM,UAAU;AAEnC,MAAMC,WAAW,GAAIC,GAAQ,IAC3BR,MAAM,CAACS,GAAG,CAAC;EACTA,GAAG,EAAEA,CAAA,KAAMH,OAAO,CAACI,aAAa,CAACF,GAAG,CAAC;EACrCG,KAAK,EAAGC,KAAK,IACX,IAAIR,WAAW,CAAC;IACdS,MAAM,EAAE,MAAM;IACdC,MAAM,EAAE,aAAa;IACrBF;GACD;CACJ,CAAC;AAEJ,MAAMG,SAAS,GAAIC,IAAY,IAC7BhB,MAAM,CAACS,GAAG,CAAC;EACTA,GAAG,EAAEA,CAAA,KAAMH,OAAO,CAACW,aAAa,CAACD,IAAI,CAAC;EACtCL,KAAK,EAAGC,KAAK,IACX,IAAIR,WAAW,CAAC;IACdS,MAAM,EAAE,MAAM;IACdC,MAAM,EAAE,WAAW;IACnBF;GACD;CACJ,CAAC;AAEJ;;;;;;;AAOA,OAAO,MAAMM,UAAU,gBAAsBjB,KAAK,CAACkB,OAAO,CAACjB,IAAI,CAAC,CAAC;EAC/D,CAACC,MAAM,GAAGA,MAAM;EAChB,GAAGE,QAAQ,CAACe,KAAK;EACjBb,WAAW;EACXQ;CACD,CAAC;AAEF;;;;;;;AAOA,OAAO,MAAMM,UAAU,gBAAsBpB,KAAK,CAACkB,OAAO,CAACjB,IAAI,CAAC,CAAC;EAC/D,CAACC,MAAM,GAAGA,MAAM;EAChB,GAAGE,QAAQ,CAACiB,KAAK;EACjBf,WAAW;EACXQ;CACD,CAAC;AAEF;;;;;;;AAOA,OAAO,MAAMQ,KAAK,gBAAsBtB,KAAK,CAACkB,OAAO,CAACjB,IAAI,CAAC,CAAC;EAC1D,CAACC,MAAM,GAAGA,MAAM;EAChB,GAAGE,QAAQ;EACXE,WAAW;EACXQ;CACD,CAAC","ignoreList":[]}
|
package/dist/NodeRuntime.d.ts
CHANGED
|
@@ -1,24 +1,65 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Node-compatible process runner for Effect programs.
|
|
3
|
+
*
|
|
4
|
+
* This module provides the shared `runMain` implementation used by
|
|
5
|
+
* Node-compatible platform packages. Use it at the outer edge of a CLI, script,
|
|
6
|
+
* worker, server, or test harness when a single Effect should become the main
|
|
7
|
+
* fiber for the process while still following Node signal and exit-code
|
|
8
|
+
* conventions.
|
|
9
|
+
*
|
|
10
|
+
* **Mental model**
|
|
11
|
+
*
|
|
12
|
+
* `runMain` starts the supplied Effect as the process root. While that fiber is
|
|
13
|
+
* running, `SIGINT` and `SIGTERM` are translated into fiber interruption so
|
|
14
|
+
* scoped resources and finalizers get a chance to run. After the fiber exits,
|
|
15
|
+
* the signal listeners are removed and the configured teardown decides the
|
|
16
|
+
* process exit code.
|
|
17
|
+
*
|
|
18
|
+
* **Common tasks**
|
|
19
|
+
*
|
|
20
|
+
* - Launch a command-line program or long-running service from an Effect.
|
|
21
|
+
* - Share the same main-runner behavior across Node-compatible packages.
|
|
22
|
+
* - Customize teardown or runtime error reporting with the `runMain` options.
|
|
23
|
+
*
|
|
24
|
+
* **Gotchas**
|
|
25
|
+
*
|
|
26
|
+
* Clean success lets the Node event loop drain naturally instead of forcing
|
|
27
|
+
* `process.exit(0)`. Signal-triggered interruption or a non-zero teardown code
|
|
28
|
+
* calls `process.exit`, so long-lived handles should be acquired in Effect
|
|
29
|
+
* scopes and released by finalizers.
|
|
30
|
+
*
|
|
31
|
+
* @since 4.0.0
|
|
3
32
|
*/
|
|
4
33
|
import type { Effect } from "effect/Effect";
|
|
5
34
|
import * as Runtime from "effect/Runtime";
|
|
6
35
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
36
|
+
* Runs an Effect as the Node process main program, interrupting the fiber on
|
|
37
|
+
* `SIGINT` or `SIGTERM` and invoking the configured teardown to determine the
|
|
38
|
+
* process exit code.
|
|
39
|
+
*
|
|
40
|
+
* @category running
|
|
41
|
+
* @since 4.0.0
|
|
9
42
|
*/
|
|
10
43
|
export declare const runMain: {
|
|
11
44
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
45
|
+
* Runs an Effect as the Node process main program, interrupting the fiber on
|
|
46
|
+
* `SIGINT` or `SIGTERM` and invoking the configured teardown to determine the
|
|
47
|
+
* process exit code.
|
|
48
|
+
*
|
|
49
|
+
* @category running
|
|
50
|
+
* @since 4.0.0
|
|
14
51
|
*/
|
|
15
52
|
(options?: {
|
|
16
53
|
readonly disableErrorReporting?: boolean | undefined;
|
|
17
54
|
readonly teardown?: Runtime.Teardown | undefined;
|
|
18
55
|
}): <E, A>(effect: Effect<A, E>) => void;
|
|
19
56
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
57
|
+
* Runs an Effect as the Node process main program, interrupting the fiber on
|
|
58
|
+
* `SIGINT` or `SIGTERM` and invoking the configured teardown to determine the
|
|
59
|
+
* process exit code.
|
|
60
|
+
*
|
|
61
|
+
* @category running
|
|
62
|
+
* @since 4.0.0
|
|
22
63
|
*/
|
|
23
64
|
<E, A>(effect: Effect<A, E>, options?: {
|
|
24
65
|
readonly disableErrorReporting?: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeRuntime.d.ts","sourceRoot":"","sources":["../src/NodeRuntime.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"NodeRuntime.d.ts","sourceRoot":"","sources":["../src/NodeRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB;;;;;;;OAOG;IACH,CACE,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAA;KACjD,GACA,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAA;IACvC;;;;;;;OAOG;IACH,CAAC,CAAC,EAAE,CAAC,EACH,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAA;KACjD,GACA,IAAI,CAAA;CAwBP,CAAA"}
|
package/dist/NodeRuntime.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import * as Runtime from "effect/Runtime";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* Runs an Effect as the Node process main program, interrupting the fiber on
|
|
4
|
+
* `SIGINT` or `SIGTERM` and invoking the configured teardown to determine the
|
|
5
|
+
* process exit code.
|
|
6
|
+
*
|
|
7
|
+
* @category running
|
|
8
|
+
* @since 4.0.0
|
|
5
9
|
*/
|
|
6
10
|
export const runMain = /*#__PURE__*/Runtime.makeRunMain(({
|
|
7
11
|
fiber,
|
|
@@ -9,10 +13,8 @@ export const runMain = /*#__PURE__*/Runtime.makeRunMain(({
|
|
|
9
13
|
}) => {
|
|
10
14
|
let receivedSignal = false;
|
|
11
15
|
fiber.addObserver(exit => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
process.removeListener("SIGTERM", onSigint);
|
|
15
|
-
}
|
|
16
|
+
process.removeListener("SIGINT", onSigint);
|
|
17
|
+
process.removeListener("SIGTERM", onSigint);
|
|
16
18
|
teardown(exit, code => {
|
|
17
19
|
if (receivedSignal || code !== 0) {
|
|
18
20
|
process.exit(code);
|
|
@@ -21,8 +23,6 @@ export const runMain = /*#__PURE__*/Runtime.makeRunMain(({
|
|
|
21
23
|
});
|
|
22
24
|
function onSigint() {
|
|
23
25
|
receivedSignal = true;
|
|
24
|
-
process.removeListener("SIGINT", onSigint);
|
|
25
|
-
process.removeListener("SIGTERM", onSigint);
|
|
26
26
|
fiber.interruptUnsafe(fiber.id);
|
|
27
27
|
}
|
|
28
28
|
process.on("SIGINT", onSigint);
|
package/dist/NodeRuntime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeRuntime.js","names":["Runtime","runMain","makeRunMain","fiber","teardown","receivedSignal","addObserver","exit","process","removeListener","onSigint","code","interruptUnsafe","id","on"],"sources":["../src/NodeRuntime.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"NodeRuntime.js","names":["Runtime","runMain","makeRunMain","fiber","teardown","receivedSignal","addObserver","exit","process","removeListener","onSigint","code","interruptUnsafe","id","on"],"sources":["../src/NodeRuntime.ts"],"sourcesContent":[null],"mappings":"AAiCA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AAEzC;;;;;;;;AAQA,OAAO,MAAMC,OAAO,gBA8BhBD,OAAO,CAACE,WAAW,CAAC,CAAC;EACvBC,KAAK;EACLC;AAAQ,CACT,KAAI;EACH,IAAIC,cAAc,GAAG,KAAK;EAE1BF,KAAK,CAACG,WAAW,CAAEC,IAAI,IAAI;IACzBC,OAAO,CAACC,cAAc,CAAC,QAAQ,EAAEC,QAAQ,CAAC;IAC1CF,OAAO,CAACC,cAAc,CAAC,SAAS,EAAEC,QAAQ,CAAC;IAC3CN,QAAQ,CAACG,IAAI,EAAGI,IAAI,IAAI;MACtB,IAAIN,cAAc,IAAIM,IAAI,KAAK,CAAC,EAAE;QAChCH,OAAO,CAACD,IAAI,CAACI,IAAI,CAAC;MACpB;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,SAASD,QAAQA,CAAA;IACfL,cAAc,GAAG,IAAI;IACrBF,KAAK,CAACS,eAAe,CAACT,KAAK,CAACU,EAAE,CAAC;EACjC;EAEAL,OAAO,CAACM,EAAE,CAAC,QAAQ,EAAEJ,QAAQ,CAAC;EAC9BF,OAAO,CAACM,EAAE,CAAC,SAAS,EAAEJ,QAAQ,CAAC;AACjC,CAAC,CAAC","ignoreList":[]}
|
package/dist/NodeSink.d.ts
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Sink adapters for writing Effect stream chunks into Node writable streams.
|
|
3
|
+
*
|
|
4
|
+
* This module is the writable-stream boundary for Node APIs: push Effect
|
|
5
|
+
* `Stream` or `Channel` chunks into file streams, HTTP request or response
|
|
6
|
+
* bodies, process stdio, sockets, and transform inputs such as compression or
|
|
7
|
+
* encryption streams. It exposes a `Sink` constructor for ordinary stream
|
|
8
|
+
* pipelines plus lower-level `Channel` and pull helpers used by other Node
|
|
9
|
+
* stream adapters.
|
|
10
|
+
*
|
|
11
|
+
* **Mental model**
|
|
12
|
+
*
|
|
13
|
+
* {@link fromWritable} builds a `Sink` for normal stream pipelines.
|
|
14
|
+
* {@link fromWritableChannel} exposes the same bridge as a `Channel`, and
|
|
15
|
+
* {@link pullIntoWritable} is the lower-level loop for adapters that already
|
|
16
|
+
* have a pull and a Node writable. All three write chunks in order and follow
|
|
17
|
+
* Node writable backpressure.
|
|
18
|
+
*
|
|
19
|
+
* **Common tasks**
|
|
20
|
+
*
|
|
21
|
+
* Use {@link fromWritable} to pipe an Effect stream into a Node destination.
|
|
22
|
+
* Use {@link fromWritableChannel} when composing at the `Channel` level. Use
|
|
23
|
+
* {@link pullIntoWritable} inside custom Node stream adapters that need direct
|
|
24
|
+
* control over the upstream pull.
|
|
25
|
+
*
|
|
26
|
+
* **Gotchas**
|
|
27
|
+
*
|
|
28
|
+
* When `write` returns `false`, pulling pauses until `drain` so upstream
|
|
29
|
+
* producers do not overrun the writable buffer. Writable `error` events are
|
|
30
|
+
* mapped through `onError`, and the writable is ended and awaited via `finish`
|
|
31
|
+
* when upstream completes unless `endOnDone` is `false`. Use `endOnDone: false`
|
|
32
|
+
* for externally owned or long-lived writables.
|
|
33
|
+
*
|
|
34
|
+
* @since 4.0.0
|
|
3
35
|
*/
|
|
4
36
|
import type { NonEmptyReadonlyArray } from "effect/Array";
|
|
5
37
|
import * as Channel from "effect/Channel";
|
|
@@ -8,8 +40,12 @@ import * as Pull from "effect/Pull";
|
|
|
8
40
|
import * as Sink from "effect/Sink";
|
|
9
41
|
import type { Writable } from "node:stream";
|
|
10
42
|
/**
|
|
43
|
+
* Creates a `Sink` that writes chunks to a Node writable stream, respecting
|
|
44
|
+
* backpressure, mapping writable errors with `onError`, and ending the stream
|
|
45
|
+
* on completion unless `endOnDone` is `false`.
|
|
46
|
+
*
|
|
11
47
|
* @category constructors
|
|
12
|
-
* @since
|
|
48
|
+
* @since 4.0.0
|
|
13
49
|
*/
|
|
14
50
|
export declare const fromWritable: <E, A = Uint8Array | string>(options: {
|
|
15
51
|
readonly evaluate: LazyArg<Writable | NodeJS.WritableStream>;
|
|
@@ -18,8 +54,12 @@ export declare const fromWritable: <E, A = Uint8Array | string>(options: {
|
|
|
18
54
|
readonly encoding?: BufferEncoding | undefined;
|
|
19
55
|
}) => Sink.Sink<void, A, never, E>;
|
|
20
56
|
/**
|
|
57
|
+
* Creates a `Channel` that pulls chunks from upstream and writes them to a
|
|
58
|
+
* Node writable stream, respecting backpressure and optionally ending the
|
|
59
|
+
* writable when upstream is done.
|
|
60
|
+
*
|
|
21
61
|
* @category constructors
|
|
22
|
-
* @since
|
|
62
|
+
* @since 4.0.0
|
|
23
63
|
*/
|
|
24
64
|
export declare const fromWritableChannel: <IE, E, A = Uint8Array | string>(options: {
|
|
25
65
|
readonly evaluate: LazyArg<Writable | NodeJS.WritableStream>;
|
|
@@ -28,7 +68,12 @@ export declare const fromWritableChannel: <IE, E, A = Uint8Array | string>(optio
|
|
|
28
68
|
readonly encoding?: BufferEncoding | undefined;
|
|
29
69
|
}) => Channel.Channel<never, IE | E, void, NonEmptyReadonlyArray<A>, IE>;
|
|
30
70
|
/**
|
|
31
|
-
*
|
|
71
|
+
* Repeatedly pulls non-empty chunks and writes them to a Node writable stream,
|
|
72
|
+
* waiting for `drain` when needed, failing on writable errors, and ending the
|
|
73
|
+
* writable on upstream completion unless disabled.
|
|
74
|
+
*
|
|
75
|
+
* @category converting
|
|
76
|
+
* @since 4.0.0
|
|
32
77
|
*/
|
|
33
78
|
export declare const pullIntoWritable: <A, IE, E>(options: {
|
|
34
79
|
readonly pull: Pull.Pull<NonEmptyReadonlyArray<A>, IE, unknown>;
|
package/dist/NodeSink.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSink.d.ts","sourceRoot":"","sources":["../src/NodeSink.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"NodeSink.d.ts","sourceRoot":"","sources":["../src/NodeSink.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAEzD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE3C;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,MAAM,EACrD,SAAS;IACP,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAA;IAC5D,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;CAC/C,KACA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAC4D,CAAA;AAE1F;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAI,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,MAAM,EAChE,SAAS;IACP,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAA;IAC5D,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;CAC/C,KACA,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,CAIhE,CAAA;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS;IAClD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;IAC/D,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;CAC/C,KAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,CAkCjC,CAAA"}
|
package/dist/NodeSink.js
CHANGED
|
@@ -5,13 +5,21 @@ import { identity } from "effect/Function";
|
|
|
5
5
|
import * as Pull from "effect/Pull";
|
|
6
6
|
import * as Sink from "effect/Sink";
|
|
7
7
|
/**
|
|
8
|
+
* Creates a `Sink` that writes chunks to a Node writable stream, respecting
|
|
9
|
+
* backpressure, mapping writable errors with `onError`, and ending the stream
|
|
10
|
+
* on completion unless `endOnDone` is `false`.
|
|
11
|
+
*
|
|
8
12
|
* @category constructors
|
|
9
|
-
* @since
|
|
13
|
+
* @since 4.0.0
|
|
10
14
|
*/
|
|
11
15
|
export const fromWritable = options => Sink.fromChannel(Channel.mapDone(fromWritableChannel(options), _ => [_]));
|
|
12
16
|
/**
|
|
17
|
+
* Creates a `Channel` that pulls chunks from upstream and writes them to a
|
|
18
|
+
* Node writable stream, respecting backpressure and optionally ending the
|
|
19
|
+
* writable when upstream is done.
|
|
20
|
+
*
|
|
13
21
|
* @category constructors
|
|
14
|
-
* @since
|
|
22
|
+
* @since 4.0.0
|
|
15
23
|
*/
|
|
16
24
|
export const fromWritableChannel = options => Channel.fromTransform(pull => {
|
|
17
25
|
const writable = options.evaluate();
|
|
@@ -22,7 +30,12 @@ export const fromWritableChannel = options => Channel.fromTransform(pull => {
|
|
|
22
30
|
}));
|
|
23
31
|
});
|
|
24
32
|
/**
|
|
25
|
-
*
|
|
33
|
+
* Repeatedly pulls non-empty chunks and writes them to a Node writable stream,
|
|
34
|
+
* waiting for `drain` when needed, failing on writable errors, and ending the
|
|
35
|
+
* writable on upstream completion unless disabled.
|
|
36
|
+
*
|
|
37
|
+
* @category converting
|
|
38
|
+
* @since 4.0.0
|
|
26
39
|
*/
|
|
27
40
|
export const pullIntoWritable = options => options.pull.pipe(Effect.flatMap(chunk => {
|
|
28
41
|
let i = 0;
|
|
@@ -38,7 +51,13 @@ export const pullIntoWritable = options => options.pull.pipe(Effect.flatMap(chun
|
|
|
38
51
|
});
|
|
39
52
|
}), Effect.forever({
|
|
40
53
|
disableYield: true
|
|
41
|
-
}),
|
|
54
|
+
}), Effect.raceFirst(Effect.callback(resume => {
|
|
55
|
+
const onError = error => resume(Effect.fail(options.onError(error)));
|
|
56
|
+
options.writable.once("error", onError);
|
|
57
|
+
return Effect.sync(() => {
|
|
58
|
+
options.writable.off("error", onError);
|
|
59
|
+
});
|
|
60
|
+
})), options.endOnDone !== false ? Pull.catchDone(_ => {
|
|
42
61
|
if ("closed" in options.writable && options.writable.closed) {
|
|
43
62
|
return Cause.done(_);
|
|
44
63
|
}
|