@effect/platform-node-shared 0.44.0 → 0.46.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/dist/cjs/NodeStream.js +3 -1
- package/dist/cjs/NodeStream.js.map +1 -1
- package/dist/cjs/internal/stream.js +54 -41
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/terminal.js +51 -62
- package/dist/cjs/internal/terminal.js.map +1 -1
- package/dist/dts/NodeStream.d.ts +4 -2
- package/dist/dts/NodeStream.d.ts.map +1 -1
- package/dist/esm/NodeStream.js +3 -1
- package/dist/esm/NodeStream.js.map +1 -1
- package/dist/esm/internal/stream.js +54 -41
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/terminal.js +51 -61
- package/dist/esm/internal/terminal.js.map +1 -1
- package/package.json +7 -7
- package/src/NodeStream.ts +10 -8
- package/src/internal/stream.ts +90 -95
- package/src/internal/terminal.ts +76 -101
package/dist/cjs/NodeStream.js
CHANGED
|
@@ -56,5 +56,7 @@ const toUint8Array = exports.toUint8Array = internal.toUint8Array;
|
|
|
56
56
|
* @since 1.0.0
|
|
57
57
|
* @category stdio
|
|
58
58
|
*/
|
|
59
|
-
const stdin = exports.stdin = /*#__PURE__*/internal.fromReadable(() => process.stdin, err => err
|
|
59
|
+
const stdin = exports.stdin = /*#__PURE__*/internal.fromReadable(() => process.stdin, err => err, {
|
|
60
|
+
closeOnDone: false
|
|
61
|
+
}).pipe(Stream.orDie);
|
|
60
62
|
//# sourceMappingURL=NodeStream.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeStream.js","names":["Stream","_interopRequireWildcard","require","internal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","fromReadable","exports","fromReadableChannel","fromDuplex","pipeThroughDuplex","pipeThroughSimple","toReadable","toReadableNever","toString","toUint8Array","stdin","process","err","pipe","orDie"],"sources":["../../src/NodeStream.ts"],"sourcesContent":[null],"mappings":";;;;;;AASA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAF,uBAAA,CAAAC,OAAA;AAAgD,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"NodeStream.js","names":["Stream","_interopRequireWildcard","require","internal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","fromReadable","exports","fromReadableChannel","fromDuplex","pipeThroughDuplex","pipeThroughSimple","toReadable","toReadableNever","toString","toUint8Array","stdin","process","err","closeOnDone","pipe","orDie"],"sources":["../../src/NodeStream.ts"],"sourcesContent":[null],"mappings":";;;;;;AASA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAF,uBAAA,CAAAC,OAAA;AAAgD,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAsBhD;;;;AAIO,MAAMkB,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAIEpB,QAAQ,CAACoB,YAAY;AAEhD;;;;AAIO,MAAME,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,GAIKtB,QAAQ,CAACsB,mBAAmB;AAEjE;;;;AAIO,MAAMC,UAAU,GAAAF,OAAA,CAAAE,UAAA,GAIuCvB,QAAQ,CAACuB,UAAU;AAEjF;;;;AAIO,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAoB1BxB,QAAQ,CAACwB,iBAAiB;AAE9B;;;;AAIO,MAAMC,iBAAiB,GAAAJ,OAAA,CAAAI,iBAAA,GAW1BzB,QAAQ,CAACyB,iBAAiB;AAE9B;;;;AAIO,MAAMC,UAAU,GAAAL,OAAA,CAAAK,UAAA,GACrB1B,QAAQ,CAAC0B,UAAU;AAErB;;;;AAIO,MAAMC,eAAe,GAAAN,OAAA,CAAAM,eAAA,GAC1B3B,QAAQ,CAAC2B,eAAe;AAE1B;;;;AAIO,MAAMC,QAAQ,GAAAP,OAAA,CAAAO,QAAA,GAOI5B,QAAQ,CAAC4B,QAAQ;AAE1C;;;;AAIO,MAAMC,YAAY,GAAAR,OAAA,CAAAQ,YAAA,GAGI7B,QAAQ,CAAC6B,YAAY;AAElD;;;;AAIO,MAAMC,KAAK,GAAAT,OAAA,CAAAS,KAAA,gBAA8B9B,QAAQ,CAACoB,YAAY,CAAC,MAAMW,OAAO,CAACD,KAAK,EAAGE,GAAG,IAAKA,GAAG,EAAE;EACvGC,WAAW,EAAE;CACd,CAAC,CAACC,IAAI,CAACrC,MAAM,CAACsC,KAAK,CAAC","ignoreList":[]}
|
|
@@ -12,15 +12,13 @@ var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
|
12
12
|
var Exit = _interopRequireWildcard(require("effect/Exit"));
|
|
13
13
|
var Fiber = _interopRequireWildcard(require("effect/Fiber"));
|
|
14
14
|
var _Function = require("effect/Function");
|
|
15
|
-
var
|
|
15
|
+
var MutableRef = _interopRequireWildcard(require("effect/MutableRef"));
|
|
16
16
|
var Runtime = _interopRequireWildcard(require("effect/Runtime"));
|
|
17
17
|
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
18
18
|
var _nodeStream = require("node:stream");
|
|
19
19
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
20
20
|
/** @internal */
|
|
21
|
-
const fromReadable = (evaluate, onError,
|
|
22
|
-
chunkSize
|
|
23
|
-
} = {}) => Stream.fromChannel(fromReadableChannel(evaluate, onError, chunkSize ? Number(chunkSize) : undefined));
|
|
21
|
+
const fromReadable = (evaluate, onError, options) => Stream.fromChannel(fromReadableChannel(evaluate, onError, options));
|
|
24
22
|
/** @internal */
|
|
25
23
|
exports.fromReadable = fromReadable;
|
|
26
24
|
const toString = (readable, options) => {
|
|
@@ -79,11 +77,14 @@ const toUint8Array = (readable, options) => {
|
|
|
79
77
|
};
|
|
80
78
|
/** @internal */
|
|
81
79
|
exports.toUint8Array = toUint8Array;
|
|
82
|
-
const fromDuplex = (evaluate, onError, options
|
|
83
|
-
|
|
84
|
-
|
|
80
|
+
const fromDuplex = (evaluate, onError, options) => Channel.suspend(() => {
|
|
81
|
+
const duplex = evaluate();
|
|
82
|
+
if (!duplex.readable) {
|
|
83
|
+
return Channel.void;
|
|
85
84
|
}
|
|
86
|
-
|
|
85
|
+
const exit = MutableRef.make(undefined);
|
|
86
|
+
return Channel.embedInput(unsafeReadableRead(duplex, onError, exit, options), writeInput(duplex, cause => Effect.sync(() => MutableRef.set(exit, Exit.failCause(cause))), options));
|
|
87
|
+
});
|
|
87
88
|
/** @internal */
|
|
88
89
|
exports.fromDuplex = fromDuplex;
|
|
89
90
|
const pipeThroughDuplex = exports.pipeThroughDuplex = /*#__PURE__*/(0, _Function.dual)(args => Stream.StreamTypeId in args[0], (self, duplex, onError, options) => Stream.pipeThroughChannelOrFail(self, fromDuplex(duplex, onError, options)));
|
|
@@ -95,11 +96,7 @@ const pipeThroughSimple = exports.pipeThroughSimple = /*#__PURE__*/(0, _Function
|
|
|
95
96
|
cause
|
|
96
97
|
}))));
|
|
97
98
|
/** @internal */
|
|
98
|
-
const fromReadableChannel = (evaluate, onError,
|
|
99
|
-
if ("closed" in readable && !readable.closed) {
|
|
100
|
-
readable.destroy();
|
|
101
|
-
}
|
|
102
|
-
}), mailbox.shutdown));
|
|
99
|
+
const fromReadableChannel = (evaluate, onError, options) => Channel.suspend(() => unsafeReadableRead(evaluate(), onError, MutableRef.make(undefined), options));
|
|
103
100
|
/** @internal */
|
|
104
101
|
exports.fromReadableChannel = fromReadableChannel;
|
|
105
102
|
const writeInput = (writable, onFailure, {
|
|
@@ -142,37 +139,53 @@ const writeEffect = (writable, encoding) => chunk => chunk.length === 0 ? Effect
|
|
|
142
139
|
loop();
|
|
143
140
|
});
|
|
144
141
|
exports.writeEffect = writeEffect;
|
|
145
|
-
const
|
|
146
|
-
readable.
|
|
147
|
-
mailbox.unsafeOffer(void 0);
|
|
148
|
-
});
|
|
149
|
-
readable.on("error", err => {
|
|
150
|
-
mailbox.unsafeDone(Exit.fail(onError(err)));
|
|
151
|
-
});
|
|
152
|
-
readable.on("end", () => {
|
|
153
|
-
mailbox.unsafeDone(Exit.void);
|
|
154
|
-
});
|
|
155
|
-
if (readable.readable) {
|
|
156
|
-
mailbox.unsafeOffer(void 0);
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
const readableTake = (readable, mailbox, chunkSize) => {
|
|
160
|
-
const read = readChunkChannel(readable, chunkSize);
|
|
161
|
-
const loop = Channel.flatMap(mailbox.takeAll, ([, done]) => done ? read : Channel.zipRight(read, loop));
|
|
162
|
-
return loop;
|
|
163
|
-
};
|
|
164
|
-
const readChunkChannel = (readable, chunkSize) => Channel.suspend(() => {
|
|
165
|
-
const arr = [];
|
|
166
|
-
let chunk = readable.read(chunkSize);
|
|
167
|
-
if (chunk === null) {
|
|
142
|
+
const unsafeReadableRead = (readable, onError, exit, options) => {
|
|
143
|
+
if (!readable.readable) {
|
|
168
144
|
return Channel.void;
|
|
169
145
|
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
146
|
+
const latch = Effect.unsafeMakeLatch(false);
|
|
147
|
+
function onReadable() {
|
|
148
|
+
latch.unsafeOpen();
|
|
173
149
|
}
|
|
174
|
-
|
|
175
|
-
|
|
150
|
+
function onErr(err) {
|
|
151
|
+
exit.current = Exit.fail(onError(err));
|
|
152
|
+
latch.unsafeOpen();
|
|
153
|
+
}
|
|
154
|
+
function onEnd() {
|
|
155
|
+
exit.current = Exit.void;
|
|
156
|
+
latch.unsafeOpen();
|
|
157
|
+
}
|
|
158
|
+
readable.on("readable", onReadable);
|
|
159
|
+
readable.on("error", onErr);
|
|
160
|
+
readable.on("end", onEnd);
|
|
161
|
+
const chunkSize = options?.chunkSize ? Number(options.chunkSize) : undefined;
|
|
162
|
+
const read = Channel.suspend(function loop() {
|
|
163
|
+
let item = readable.read(chunkSize);
|
|
164
|
+
if (item === null) {
|
|
165
|
+
if (exit.current) {
|
|
166
|
+
return Channel.fromEffect(exit.current);
|
|
167
|
+
}
|
|
168
|
+
latch.unsafeClose();
|
|
169
|
+
return Channel.flatMap(latch.await, loop);
|
|
170
|
+
}
|
|
171
|
+
const arr = [item];
|
|
172
|
+
while (true) {
|
|
173
|
+
item = readable.read(chunkSize);
|
|
174
|
+
if (item === null) {
|
|
175
|
+
return Channel.flatMap(Channel.write(Chunk.unsafeFromArray(arr)), loop);
|
|
176
|
+
}
|
|
177
|
+
arr.push(item);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
return Channel.ensuring(read, Effect.sync(() => {
|
|
181
|
+
readable.off("readable", onReadable);
|
|
182
|
+
readable.off("error", onErr);
|
|
183
|
+
readable.off("end", onEnd);
|
|
184
|
+
if (options?.closeOnDone !== false && "closed" in readable && !readable.closed) {
|
|
185
|
+
readable.destroy();
|
|
186
|
+
}
|
|
187
|
+
}));
|
|
188
|
+
};
|
|
176
189
|
class StreamAdapter extends _nodeStream.Readable {
|
|
177
190
|
readLatch;
|
|
178
191
|
fiber = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","names":["_Error","require","Cause","_interopRequireWildcard","Channel","Chunk","Effect","Exit","Fiber","_Function","Mailbox","Runtime","Stream","_nodeStream","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","fromReadable","evaluate","onError","chunkSize","fromChannel","fromReadableChannel","Number","undefined","exports","toString","readable","options","maxBytesNumber","maxBytes","acquireUseRelease","sync","stream","setEncoding","encoding","async","resume","string","bytes","once","err","fail","onFailure","succeed","on","chunk","Buffer","byteLength","Error","closed","destroy","toUint8Array","buffer","alloc","concat","length","fromDuplex","tap","zip","make","duplex","mailbox","readableOffer","embedInput","readableTake","writeInput","cause","failCause","zipRight","shutdown","pipeThroughDuplex","dual","args","StreamTypeId","self","pipeThroughChannelOrFail","pipeThroughSimple","SystemError","module","method","reason","writable","endOnDone","onDone","void","write","writeEffect","close","end","awaitRead","emit","error","done","_","iterator","Symbol","next","loop","item","success","value","unsafeOffer","unsafeDone","read","readChunkChannel","flatMap","takeAll","suspend","arr","push","unsafeFromArray","StreamAdapter","Readable","readLatch","fiber","constructor","runtime","unsafeMakeLatch","runFork","whenOpen","runForEachChunk","unsafeClose","addObserver","exit","isSuccess","squash","_read","_size","unsafeOpen","_destroy","callback","interrupt","_tag","toReadable","map","toReadableNever","defaultRuntime"],"sources":["../../../src/internal/stream.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"stream.js","names":["_Error","require","Cause","_interopRequireWildcard","Channel","Chunk","Effect","Exit","Fiber","_Function","MutableRef","Runtime","Stream","_nodeStream","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","fromReadable","evaluate","onError","options","fromChannel","fromReadableChannel","exports","toString","readable","maxBytesNumber","maxBytes","Number","undefined","acquireUseRelease","sync","stream","setEncoding","encoding","async","resume","string","bytes","once","err","fail","onFailure","succeed","on","chunk","Buffer","byteLength","Error","closed","destroy","toUint8Array","buffer","alloc","concat","length","fromDuplex","suspend","duplex","void","exit","make","embedInput","unsafeReadableRead","writeInput","cause","failCause","pipeThroughDuplex","dual","args","StreamTypeId","self","pipeThroughChannelOrFail","pipeThroughSimple","SystemError","module","method","reason","writable","endOnDone","onDone","write","writeEffect","close","end","awaitRead","emit","error","zipRight","done","_","iterator","Symbol","next","loop","item","success","value","latch","unsafeMakeLatch","onReadable","unsafeOpen","onErr","current","onEnd","chunkSize","read","fromEffect","unsafeClose","flatMap","await","arr","unsafeFromArray","push","ensuring","off","closeOnDone","StreamAdapter","Readable","readLatch","fiber","constructor","runtime","runFork","whenOpen","runForEachChunk","addObserver","isSuccess","squash","_read","_size","_destroy","callback","interrupt","_tag","toReadable","map","toReadableNever","defaultRuntime"],"sources":["../../../src/internal/stream.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -7,92 +7,81 @@ exports.make = exports.layer = void 0;
|
|
|
7
7
|
var Error = _interopRequireWildcard(require("@effect/platform/Error"));
|
|
8
8
|
var Terminal = _interopRequireWildcard(require("@effect/platform/Terminal"));
|
|
9
9
|
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
10
|
+
var Exit = _interopRequireWildcard(require("effect/Exit"));
|
|
10
11
|
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
12
|
+
var Mailbox = _interopRequireWildcard(require("effect/Mailbox"));
|
|
11
13
|
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
14
|
+
var RcRef = _interopRequireWildcard(require("effect/RcRef"));
|
|
12
15
|
var readline = _interopRequireWildcard(require("node:readline"));
|
|
13
16
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
14
17
|
const defaultShouldQuit = input => input.key.ctrl && (input.key.name === "c" || input.key.name === "d");
|
|
15
18
|
/** @internal */
|
|
16
|
-
const make =
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
// Acquire
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
rl.close();
|
|
19
|
+
const make = exports.make = /*#__PURE__*/Effect.fnUntraced(function* (shouldQuit = defaultShouldQuit) {
|
|
20
|
+
const stdin = process.stdin;
|
|
21
|
+
const stdout = process.stdout;
|
|
22
|
+
// Acquire readline interface with TTY setup/cleanup inside the scope
|
|
23
|
+
const rlRef = yield* RcRef.make({
|
|
24
|
+
acquire: Effect.acquireRelease(Effect.sync(() => {
|
|
25
|
+
const rl = readline.createInterface({
|
|
26
|
+
input: stdin,
|
|
27
|
+
escapeCodeTimeout: 50
|
|
28
|
+
});
|
|
29
|
+
readline.emitKeypressEvents(stdin, rl);
|
|
30
|
+
if (stdin.isTTY) {
|
|
31
|
+
stdin.setRawMode(true);
|
|
32
|
+
}
|
|
33
|
+
return rl;
|
|
34
|
+
}), rl => Effect.sync(() => {
|
|
35
|
+
if (stdin.isTTY) {
|
|
36
|
+
stdin.setRawMode(false);
|
|
37
|
+
}
|
|
38
|
+
rl.close();
|
|
39
|
+
}))
|
|
38
40
|
});
|
|
39
|
-
|
|
40
|
-
const
|
|
41
|
-
|
|
41
|
+
const columns = Effect.sync(() => stdout.columns ?? 0);
|
|
42
|
+
const readInput = Effect.gen(function* () {
|
|
43
|
+
yield* RcRef.get(rlRef);
|
|
44
|
+
const mailbox = yield* Mailbox.make();
|
|
45
|
+
const handleKeypress = (s, k) => {
|
|
42
46
|
const userInput = {
|
|
43
|
-
input: Option.fromNullable(
|
|
47
|
+
input: Option.fromNullable(s),
|
|
44
48
|
key: {
|
|
45
|
-
name:
|
|
46
|
-
ctrl:
|
|
47
|
-
meta:
|
|
48
|
-
shift:
|
|
49
|
+
name: k.name ?? "",
|
|
50
|
+
ctrl: !!k.ctrl,
|
|
51
|
+
meta: !!k.meta,
|
|
52
|
+
shift: !!k.shift
|
|
49
53
|
}
|
|
50
54
|
};
|
|
51
55
|
if (shouldQuit(userInput)) {
|
|
52
|
-
|
|
56
|
+
mailbox.unsafeDone(Exit.void);
|
|
53
57
|
} else {
|
|
54
|
-
|
|
58
|
+
mailbox.unsafeOffer(userInput);
|
|
55
59
|
}
|
|
56
60
|
};
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
});
|
|
61
|
+
yield* Effect.addFinalizer(() => Effect.sync(() => stdin.off("keypress", handleKeypress)));
|
|
62
|
+
stdin.on("keypress", handleKeypress);
|
|
63
|
+
return mailbox;
|
|
61
64
|
});
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
rl.on("line", handleLine);
|
|
68
|
-
return Effect.sync(() => {
|
|
69
|
-
rl.removeListener("line", handleLine);
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
const readInput = Effect.acquireUseRelease(acquireReadlineInterface.pipe(Effect.map(emitKeypressEvents)), () => handleKeypressEvent(input), releaseReadlineInterface);
|
|
73
|
-
const readLine = Effect.acquireUseRelease(acquireReadlineInterface, rl => handleLineEvent(rl), releaseReadlineInterface);
|
|
65
|
+
const readLine = RcRef.get(rlRef).pipe(Effect.flatMap(readlineInterface => Effect.async(resume => {
|
|
66
|
+
const onLine = line => resume(Effect.succeed(line));
|
|
67
|
+
readlineInterface.once("line", onLine);
|
|
68
|
+
return Effect.sync(() => readlineInterface.off("line", onLine));
|
|
69
|
+
})), Effect.scoped);
|
|
74
70
|
const display = prompt => Effect.uninterruptible(Effect.async(resume => {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
cause: err
|
|
82
|
-
})));
|
|
83
|
-
}
|
|
84
|
-
resume(Effect.void);
|
|
85
|
-
});
|
|
71
|
+
stdout.write(prompt, err => err ? resume(Effect.fail(new Error.BadArgument({
|
|
72
|
+
module: "Terminal",
|
|
73
|
+
method: "display",
|
|
74
|
+
description: "Failed to write prompt to stdout",
|
|
75
|
+
cause: err
|
|
76
|
+
}))) : resume(Effect.void));
|
|
86
77
|
}));
|
|
87
78
|
return Terminal.Terminal.of({
|
|
88
|
-
|
|
89
|
-
columns: Effect.sync(() => output.columns || 0),
|
|
79
|
+
columns,
|
|
90
80
|
readInput,
|
|
91
81
|
readLine,
|
|
92
82
|
display
|
|
93
83
|
});
|
|
94
84
|
});
|
|
95
85
|
/** @internal */
|
|
96
|
-
exports.make = make;
|
|
97
86
|
const layer = exports.layer = /*#__PURE__*/Layer.scoped(Terminal.Terminal, /*#__PURE__*/make(defaultShouldQuit));
|
|
98
87
|
//# sourceMappingURL=terminal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","names":["Error","_interopRequireWildcard","require","Terminal","Effect","Layer","Option","readline","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","defaultShouldQuit","input","key","ctrl","name","make","
|
|
1
|
+
{"version":3,"file":"terminal.js","names":["Error","_interopRequireWildcard","require","Terminal","Effect","Exit","Layer","Mailbox","Option","RcRef","readline","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","defaultShouldQuit","input","key","ctrl","name","make","exports","fnUntraced","shouldQuit","stdin","process","stdout","rlRef","acquire","acquireRelease","sync","rl","createInterface","escapeCodeTimeout","emitKeypressEvents","isTTY","setRawMode","close","columns","readInput","gen","mailbox","handleKeypress","s","k","userInput","fromNullable","meta","shift","unsafeDone","void","unsafeOffer","addFinalizer","off","on","readLine","pipe","flatMap","readlineInterface","async","resume","onLine","line","succeed","once","scoped","display","prompt","uninterruptible","write","err","fail","BadArgument","module","method","description","cause","of","layer"],"sources":["../../../src/internal/terminal.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,uBAAA,CAAAC,OAAA;AACA,IAAAG,IAAA,GAAAJ,uBAAA,CAAAC,OAAA;AACA,IAAAI,KAAA,GAAAL,uBAAA,CAAAC,OAAA;AACA,IAAAK,OAAA,GAAAN,uBAAA,CAAAC,OAAA;AACA,IAAAM,MAAA,GAAAP,uBAAA,CAAAC,OAAA;AACA,IAAAO,KAAA,GAAAR,uBAAA,CAAAC,OAAA;AACA,IAAAQ,QAAA,GAAAT,uBAAA,CAAAC,OAAA;AAAyC,SAAAD,wBAAAU,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAZ,uBAAA,YAAAA,CAAAU,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAEzC,MAAMkB,iBAAiB,GAAIC,KAAyB,IAClDA,KAAK,CAACC,GAAG,CAACC,IAAI,KAAKF,KAAK,CAACC,GAAG,CAACE,IAAI,KAAK,GAAG,IAAIH,KAAK,CAACC,GAAG,CAACE,IAAI,KAAK,GAAG,CAAC;AAEtE;AACO,MAAMC,IAAI,GAAAC,OAAA,CAAAD,IAAA,gBAAG/B,MAAM,CAACiC,UAAU,CAAC,WACpCC,UAAA,GAAqDR,iBAAiB;EAEtE,MAAMS,KAAK,GAAGC,OAAO,CAACD,KAAK;EAC3B,MAAME,MAAM,GAAGD,OAAO,CAACC,MAAM;EAE7B;EACA,MAAMC,KAAK,GAAG,OAAOjC,KAAK,CAAC0B,IAAI,CAAC;IAC9BQ,OAAO,EAAEvC,MAAM,CAACwC,cAAc,CAC5BxC,MAAM,CAACyC,IAAI,CAAC,MAAK;MACf,MAAMC,EAAE,GAAGpC,QAAQ,CAACqC,eAAe,CAAC;QAAEhB,KAAK,EAAEQ,KAAK;QAAES,iBAAiB,EAAE;MAAE,CAAE,CAAC;MAC5EtC,QAAQ,CAACuC,kBAAkB,CAACV,KAAK,EAAEO,EAAE,CAAC;MAEtC,IAAIP,KAAK,CAACW,KAAK,EAAE;QACfX,KAAK,CAACY,UAAU,CAAC,IAAI,CAAC;MACxB;MACA,OAAOL,EAAE;IACX,CAAC,CAAC,EACDA,EAAE,IACD1C,MAAM,CAACyC,IAAI,CAAC,MAAK;MACf,IAAIN,KAAK,CAACW,KAAK,EAAE;QACfX,KAAK,CAACY,UAAU,CAAC,KAAK,CAAC;MACzB;MACAL,EAAE,CAACM,KAAK,EAAE;IACZ,CAAC,CAAC;GAEP,CAAC;EAEF,MAAMC,OAAO,GAAGjD,MAAM,CAACyC,IAAI,CAAC,MAAMJ,MAAM,CAACY,OAAO,IAAI,CAAC,CAAC;EAEtD,MAAMC,SAAS,GAAGlD,MAAM,CAACmD,GAAG,CAAC,aAAS;IACpC,OAAO9C,KAAK,CAACc,GAAG,CAACmB,KAAK,CAAC;IACvB,MAAMc,OAAO,GAAG,OAAOjD,OAAO,CAAC4B,IAAI,EAAsB;IACzD,MAAMsB,cAAc,GAAGA,CAACC,CAAqB,EAAEC,CAAe,KAAI;MAChE,MAAMC,SAAS,GAAG;QAChB7B,KAAK,EAAEvB,MAAM,CAACqD,YAAY,CAACH,CAAC,CAAC;QAC7B1B,GAAG,EAAE;UAAEE,IAAI,EAAEyB,CAAC,CAACzB,IAAI,IAAI,EAAE;UAAED,IAAI,EAAE,CAAC,CAAC0B,CAAC,CAAC1B,IAAI;UAAE6B,IAAI,EAAE,CAAC,CAACH,CAAC,CAACG,IAAI;UAAEC,KAAK,EAAE,CAAC,CAACJ,CAAC,CAACI;QAAK;OAC5E;MACD,IAAIzB,UAAU,CAACsB,SAAS,CAAC,EAAE;QACzBJ,OAAO,CAACQ,UAAU,CAAC3D,IAAI,CAAC4D,IAAI,CAAC;MAC/B,CAAC,MAAM;QACLT,OAAO,CAACU,WAAW,CAACN,SAAS,CAAC;MAChC;IACF,CAAC;IACD,OAAOxD,MAAM,CAAC+D,YAAY,CAAC,MAAM/D,MAAM,CAACyC,IAAI,CAAC,MAAMN,KAAK,CAAC6B,GAAG,CAAC,UAAU,EAAEX,cAAc,CAAC,CAAC,CAAC;IAC1FlB,KAAK,CAAC8B,EAAE,CAAC,UAAU,EAAEZ,cAAc,CAAC;IACpC,OAAOD,OAAsD;EAC/D,CAAC,CAAC;EAEF,MAAMc,QAAQ,GAAG7D,KAAK,CAACc,GAAG,CAACmB,KAAK,CAAC,CAAC6B,IAAI,CACpCnE,MAAM,CAACoE,OAAO,CAAEC,iBAAiB,IAC/BrE,MAAM,CAACsE,KAAK,CAAkCC,MAAM,IAAI;IACtD,MAAMC,MAAM,GAAIC,IAAY,IAAKF,MAAM,CAACvE,MAAM,CAAC0E,OAAO,CAACD,IAAI,CAAC,CAAC;IAC7DJ,iBAAiB,CAACM,IAAI,CAAC,MAAM,EAAEH,MAAM,CAAC;IACtC,OAAOxE,MAAM,CAACyC,IAAI,CAAC,MAAM4B,iBAAiB,CAACL,GAAG,CAAC,MAAM,EAAEQ,MAAM,CAAC,CAAC;EACjE,CAAC,CAAC,CACH,EACDxE,MAAM,CAAC4E,MAAM,CACd;EAED,MAAMC,OAAO,GAAIC,MAAc,IAC7B9E,MAAM,CAAC+E,eAAe,CACpB/E,MAAM,CAACsE,KAAK,CAA6BC,MAAM,IAAI;IACjDlC,MAAM,CAAC2C,KAAK,CAACF,MAAM,EAAGG,GAAG,IACvBA,GAAG,GACCV,MAAM,CAACvE,MAAM,CAACkF,IAAI,CAClB,IAAItF,KAAK,CAACuF,WAAW,CAAC;MACpBC,MAAM,EAAE,UAAU;MAClBC,MAAM,EAAE,SAAS;MACjBC,WAAW,EAAE,kCAAkC;MAC/CC,KAAK,EAAEN;KACR,CAAC,CACH,CAAC,GACAV,MAAM,CAACvE,MAAM,CAAC6D,IAAI,CAAC,CAAC;EAC5B,CAAC,CAAC,CACH;EAEH,OAAO9D,QAAQ,CAACA,QAAQ,CAACyF,EAAE,CAAC;IAC1BvC,OAAO;IACPC,SAAS;IACTgB,QAAQ;IACRW;GACD,CAAC;AACJ,CAAC,CAAC;AAEF;AACO,MAAMY,KAAK,GAAAzD,OAAA,CAAAyD,KAAA,gBAAmCvF,KAAK,CAAC0E,MAAM,CAAC7E,QAAQ,CAACA,QAAQ,eAAEgC,IAAI,CAACL,iBAAiB,CAAC,CAAC","ignoreList":[]}
|
package/dist/dts/NodeStream.d.ts
CHANGED
|
@@ -16,6 +16,8 @@ import type { Duplex, Readable } from "node:stream";
|
|
|
16
16
|
export interface FromReadableOptions {
|
|
17
17
|
/** Defaults to undefined, which lets Node.js decide the chunk size */
|
|
18
18
|
readonly chunkSize?: SizeInput;
|
|
19
|
+
/** Default to true, which means the stream will be closed when done */
|
|
20
|
+
readonly closeOnDone?: boolean | undefined;
|
|
19
21
|
}
|
|
20
22
|
/**
|
|
21
23
|
* @category model
|
|
@@ -29,12 +31,12 @@ export interface FromWritableOptions {
|
|
|
29
31
|
* @category constructors
|
|
30
32
|
* @since 1.0.0
|
|
31
33
|
*/
|
|
32
|
-
export declare const fromReadable: <E, A = Uint8Array
|
|
34
|
+
export declare const fromReadable: <E, A = Uint8Array<ArrayBufferLike>>(evaluate: LazyArg<Readable | NodeJS.ReadableStream>, onError: (error: unknown) => E, options?: FromReadableOptions) => Stream.Stream<A, E>;
|
|
33
35
|
/**
|
|
34
36
|
* @category constructors
|
|
35
37
|
* @since 1.0.0
|
|
36
38
|
*/
|
|
37
|
-
export declare const fromReadableChannel: <E, A = Uint8Array
|
|
39
|
+
export declare const fromReadableChannel: <E, A = Uint8Array<ArrayBufferLike>>(evaluate: LazyArg<Readable | NodeJS.ReadableStream>, onError: (error: unknown) => E, options?: FromReadableOptions | undefined) => Channel<Chunk<A>, unknown, E>;
|
|
38
40
|
/**
|
|
39
41
|
* @category constructors
|
|
40
42
|
* @since 1.0.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeStream.d.ts","sourceRoot":"","sources":["../../src/NodeStream.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAGnD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,sEAAsE;IACtE,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"NodeStream.d.ts","sourceRoot":"","sources":["../../src/NodeStream.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/NodeStream.js
CHANGED
|
@@ -49,5 +49,7 @@ export const toUint8Array = internal.toUint8Array;
|
|
|
49
49
|
* @since 1.0.0
|
|
50
50
|
* @category stdio
|
|
51
51
|
*/
|
|
52
|
-
export const stdin = /*#__PURE__*/internal.fromReadable(() => process.stdin, err => err
|
|
52
|
+
export const stdin = /*#__PURE__*/internal.fromReadable(() => process.stdin, err => err, {
|
|
53
|
+
closeOnDone: false
|
|
54
|
+
}).pipe(Stream.orDie);
|
|
53
55
|
//# sourceMappingURL=NodeStream.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeStream.js","names":["Stream","internal","fromReadable","fromReadableChannel","fromDuplex","pipeThroughDuplex","pipeThroughSimple","toReadable","toReadableNever","toString","toUint8Array","stdin","process","err","pipe","orDie"],"sources":["../../src/NodeStream.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,QAAQ,MAAM,sBAAsB;
|
|
1
|
+
{"version":3,"file":"NodeStream.js","names":["Stream","internal","fromReadable","fromReadableChannel","fromDuplex","pipeThroughDuplex","pipeThroughSimple","toReadable","toReadableNever","toString","toUint8Array","stdin","process","err","closeOnDone","pipe","orDie"],"sources":["../../src/NodeStream.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,QAAQ,MAAM,sBAAsB;AAsBhD;;;;AAIA,OAAO,MAAMC,YAAY,GAIED,QAAQ,CAACC,YAAY;AAEhD;;;;AAIA,OAAO,MAAMC,mBAAmB,GAIKF,QAAQ,CAACE,mBAAmB;AAEjE;;;;AAIA,OAAO,MAAMC,UAAU,GAIuCH,QAAQ,CAACG,UAAU;AAEjF;;;;AAIA,OAAO,MAAMC,iBAAiB,GAoB1BJ,QAAQ,CAACI,iBAAiB;AAE9B;;;;AAIA,OAAO,MAAMC,iBAAiB,GAW1BL,QAAQ,CAACK,iBAAiB;AAE9B;;;;AAIA,OAAO,MAAMC,UAAU,GACrBN,QAAQ,CAACM,UAAU;AAErB;;;;AAIA,OAAO,MAAMC,eAAe,GAC1BP,QAAQ,CAACO,eAAe;AAE1B;;;;AAIA,OAAO,MAAMC,QAAQ,GAOIR,QAAQ,CAACQ,QAAQ;AAE1C;;;;AAIA,OAAO,MAAMC,YAAY,GAGIT,QAAQ,CAACS,YAAY;AAElD;;;;AAIA,OAAO,MAAMC,KAAK,gBAA8BV,QAAQ,CAACC,YAAY,CAAC,MAAMU,OAAO,CAACD,KAAK,EAAGE,GAAG,IAAKA,GAAG,EAAE;EACvGC,WAAW,EAAE;CACd,CAAC,CAACC,IAAI,CAACf,MAAM,CAACgB,KAAK,CAAC","ignoreList":[]}
|
|
@@ -6,14 +6,12 @@ import * as Effect from "effect/Effect";
|
|
|
6
6
|
import * as Exit from "effect/Exit";
|
|
7
7
|
import * as Fiber from "effect/Fiber";
|
|
8
8
|
import { dual } from "effect/Function";
|
|
9
|
-
import * as
|
|
9
|
+
import * as MutableRef from "effect/MutableRef";
|
|
10
10
|
import * as Runtime from "effect/Runtime";
|
|
11
11
|
import * as Stream from "effect/Stream";
|
|
12
12
|
import { Readable } from "node:stream";
|
|
13
13
|
/** @internal */
|
|
14
|
-
export const fromReadable = (evaluate, onError,
|
|
15
|
-
chunkSize
|
|
16
|
-
} = {}) => Stream.fromChannel(fromReadableChannel(evaluate, onError, chunkSize ? Number(chunkSize) : undefined));
|
|
14
|
+
export const fromReadable = (evaluate, onError, options) => Stream.fromChannel(fromReadableChannel(evaluate, onError, options));
|
|
17
15
|
/** @internal */
|
|
18
16
|
export const toString = (readable, options) => {
|
|
19
17
|
const maxBytesNumber = options.maxBytes ? Number(options.maxBytes) : undefined;
|
|
@@ -69,11 +67,14 @@ export const toUint8Array = (readable, options) => {
|
|
|
69
67
|
}));
|
|
70
68
|
};
|
|
71
69
|
/** @internal */
|
|
72
|
-
export const fromDuplex = (evaluate, onError, options
|
|
73
|
-
|
|
74
|
-
|
|
70
|
+
export const fromDuplex = (evaluate, onError, options) => Channel.suspend(() => {
|
|
71
|
+
const duplex = evaluate();
|
|
72
|
+
if (!duplex.readable) {
|
|
73
|
+
return Channel.void;
|
|
75
74
|
}
|
|
76
|
-
|
|
75
|
+
const exit = MutableRef.make(undefined);
|
|
76
|
+
return Channel.embedInput(unsafeReadableRead(duplex, onError, exit, options), writeInput(duplex, cause => Effect.sync(() => MutableRef.set(exit, Exit.failCause(cause))), options));
|
|
77
|
+
});
|
|
77
78
|
/** @internal */
|
|
78
79
|
export const pipeThroughDuplex = /*#__PURE__*/dual(args => Stream.StreamTypeId in args[0], (self, duplex, onError, options) => Stream.pipeThroughChannelOrFail(self, fromDuplex(duplex, onError, options)));
|
|
79
80
|
/** @internal */
|
|
@@ -84,11 +85,7 @@ export const pipeThroughSimple = /*#__PURE__*/dual(2, (self, duplex) => Stream.p
|
|
|
84
85
|
cause
|
|
85
86
|
}))));
|
|
86
87
|
/** @internal */
|
|
87
|
-
export const fromReadableChannel = (evaluate, onError,
|
|
88
|
-
if ("closed" in readable && !readable.closed) {
|
|
89
|
-
readable.destroy();
|
|
90
|
-
}
|
|
91
|
-
}), mailbox.shutdown));
|
|
88
|
+
export const fromReadableChannel = (evaluate, onError, options) => Channel.suspend(() => unsafeReadableRead(evaluate(), onError, MutableRef.make(undefined), options));
|
|
92
89
|
/** @internal */
|
|
93
90
|
export const writeInput = (writable, onFailure, {
|
|
94
91
|
encoding,
|
|
@@ -128,37 +125,53 @@ export const writeEffect = (writable, encoding) => chunk => chunk.length === 0 ?
|
|
|
128
125
|
}
|
|
129
126
|
loop();
|
|
130
127
|
});
|
|
131
|
-
const
|
|
132
|
-
readable.
|
|
133
|
-
mailbox.unsafeOffer(void 0);
|
|
134
|
-
});
|
|
135
|
-
readable.on("error", err => {
|
|
136
|
-
mailbox.unsafeDone(Exit.fail(onError(err)));
|
|
137
|
-
});
|
|
138
|
-
readable.on("end", () => {
|
|
139
|
-
mailbox.unsafeDone(Exit.void);
|
|
140
|
-
});
|
|
141
|
-
if (readable.readable) {
|
|
142
|
-
mailbox.unsafeOffer(void 0);
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
|
-
const readableTake = (readable, mailbox, chunkSize) => {
|
|
146
|
-
const read = readChunkChannel(readable, chunkSize);
|
|
147
|
-
const loop = Channel.flatMap(mailbox.takeAll, ([, done]) => done ? read : Channel.zipRight(read, loop));
|
|
148
|
-
return loop;
|
|
149
|
-
};
|
|
150
|
-
const readChunkChannel = (readable, chunkSize) => Channel.suspend(() => {
|
|
151
|
-
const arr = [];
|
|
152
|
-
let chunk = readable.read(chunkSize);
|
|
153
|
-
if (chunk === null) {
|
|
128
|
+
const unsafeReadableRead = (readable, onError, exit, options) => {
|
|
129
|
+
if (!readable.readable) {
|
|
154
130
|
return Channel.void;
|
|
155
131
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
132
|
+
const latch = Effect.unsafeMakeLatch(false);
|
|
133
|
+
function onReadable() {
|
|
134
|
+
latch.unsafeOpen();
|
|
159
135
|
}
|
|
160
|
-
|
|
161
|
-
|
|
136
|
+
function onErr(err) {
|
|
137
|
+
exit.current = Exit.fail(onError(err));
|
|
138
|
+
latch.unsafeOpen();
|
|
139
|
+
}
|
|
140
|
+
function onEnd() {
|
|
141
|
+
exit.current = Exit.void;
|
|
142
|
+
latch.unsafeOpen();
|
|
143
|
+
}
|
|
144
|
+
readable.on("readable", onReadable);
|
|
145
|
+
readable.on("error", onErr);
|
|
146
|
+
readable.on("end", onEnd);
|
|
147
|
+
const chunkSize = options?.chunkSize ? Number(options.chunkSize) : undefined;
|
|
148
|
+
const read = Channel.suspend(function loop() {
|
|
149
|
+
let item = readable.read(chunkSize);
|
|
150
|
+
if (item === null) {
|
|
151
|
+
if (exit.current) {
|
|
152
|
+
return Channel.fromEffect(exit.current);
|
|
153
|
+
}
|
|
154
|
+
latch.unsafeClose();
|
|
155
|
+
return Channel.flatMap(latch.await, loop);
|
|
156
|
+
}
|
|
157
|
+
const arr = [item];
|
|
158
|
+
while (true) {
|
|
159
|
+
item = readable.read(chunkSize);
|
|
160
|
+
if (item === null) {
|
|
161
|
+
return Channel.flatMap(Channel.write(Chunk.unsafeFromArray(arr)), loop);
|
|
162
|
+
}
|
|
163
|
+
arr.push(item);
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
return Channel.ensuring(read, Effect.sync(() => {
|
|
167
|
+
readable.off("readable", onReadable);
|
|
168
|
+
readable.off("error", onErr);
|
|
169
|
+
readable.off("end", onEnd);
|
|
170
|
+
if (options?.closeOnDone !== false && "closed" in readable && !readable.closed) {
|
|
171
|
+
readable.destroy();
|
|
172
|
+
}
|
|
173
|
+
}));
|
|
174
|
+
};
|
|
162
175
|
class StreamAdapter extends Readable {
|
|
163
176
|
readLatch;
|
|
164
177
|
fiber = undefined;
|