@effect/platform-node-shared 0.0.0-snapshot-c0ae728e57df2c572ea803e1bb7121088cd67b49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/Http/Etag/package.json +6 -0
  2. package/Http/Multipart/package.json +6 -0
  3. package/LICENSE +21 -0
  4. package/NodeCommandExecutor/package.json +6 -0
  5. package/NodeFileSystem/package.json +6 -0
  6. package/NodeKeyValueStore/package.json +6 -0
  7. package/NodePath/package.json +6 -0
  8. package/NodeRuntime/package.json +6 -0
  9. package/NodeSink/package.json +6 -0
  10. package/NodeStream/package.json +6 -0
  11. package/NodeTerminal/package.json +6 -0
  12. package/README.md +64 -0
  13. package/dist/cjs/Http/Etag.js +43 -0
  14. package/dist/cjs/Http/Etag.js.map +1 -0
  15. package/dist/cjs/Http/Multipart.js +48 -0
  16. package/dist/cjs/Http/Multipart.js.map +1 -0
  17. package/dist/cjs/NodeCommandExecutor.js +38 -0
  18. package/dist/cjs/NodeCommandExecutor.js.map +1 -0
  19. package/dist/cjs/NodeFileSystem.js +42 -0
  20. package/dist/cjs/NodeFileSystem.js.map +1 -0
  21. package/dist/cjs/NodeKeyValueStore.js +42 -0
  22. package/dist/cjs/NodeKeyValueStore.js.map +1 -0
  23. package/dist/cjs/NodePath.js +52 -0
  24. package/dist/cjs/NodePath.js.map +1 -0
  25. package/dist/cjs/NodeRuntime.js +38 -0
  26. package/dist/cjs/NodeRuntime.js.map +1 -0
  27. package/dist/cjs/NodeSink.js +43 -0
  28. package/dist/cjs/NodeSink.js.map +1 -0
  29. package/dist/cjs/NodeStream.js +68 -0
  30. package/dist/cjs/NodeStream.js.map +1 -0
  31. package/dist/cjs/NodeTerminal.js +43 -0
  32. package/dist/cjs/NodeTerminal.js.map +1 -0
  33. package/dist/cjs/internal/commandExecutor.js +151 -0
  34. package/dist/cjs/internal/commandExecutor.js.map +1 -0
  35. package/dist/cjs/internal/error.js +44 -0
  36. package/dist/cjs/internal/error.js.map +1 -0
  37. package/dist/cjs/internal/fileSystem.js +370 -0
  38. package/dist/cjs/internal/fileSystem.js.map +1 -0
  39. package/dist/cjs/internal/http/etag.js +74 -0
  40. package/dist/cjs/internal/http/etag.js.map +1 -0
  41. package/dist/cjs/internal/http/multipart.js +119 -0
  42. package/dist/cjs/internal/http/multipart.js.map +1 -0
  43. package/dist/cjs/internal/path.js +72 -0
  44. package/dist/cjs/internal/path.js.map +1 -0
  45. package/dist/cjs/internal/runtime.js +59 -0
  46. package/dist/cjs/internal/runtime.js.map +1 -0
  47. package/dist/cjs/internal/sink.js +52 -0
  48. package/dist/cjs/internal/sink.js.map +1 -0
  49. package/dist/cjs/internal/stream.js +208 -0
  50. package/dist/cjs/internal/stream.js.map +1 -0
  51. package/dist/cjs/internal/terminal.js +121 -0
  52. package/dist/cjs/internal/terminal.js.map +1 -0
  53. package/dist/dts/Http/Etag.d.ts +16 -0
  54. package/dist/dts/Http/Etag.d.ts.map +1 -0
  55. package/dist/dts/Http/Multipart.d.ts +29 -0
  56. package/dist/dts/Http/Multipart.d.ts.map +1 -0
  57. package/dist/dts/NodeCommandExecutor.d.ts +12 -0
  58. package/dist/dts/NodeCommandExecutor.d.ts.map +1 -0
  59. package/dist/dts/NodeFileSystem.d.ts +11 -0
  60. package/dist/dts/NodeFileSystem.d.ts.map +1 -0
  61. package/dist/dts/NodeKeyValueStore.d.ts +12 -0
  62. package/dist/dts/NodeKeyValueStore.d.ts.map +1 -0
  63. package/dist/dts/NodePath.d.ts +21 -0
  64. package/dist/dts/NodePath.d.ts.map +1 -0
  65. package/dist/dts/NodeRuntime.d.ts +10 -0
  66. package/dist/dts/NodeRuntime.d.ts.map +1 -0
  67. package/dist/dts/NodeSink.d.ts +22 -0
  68. package/dist/dts/NodeSink.d.ts.map +1 -0
  69. package/dist/dts/NodeStream.d.ts +79 -0
  70. package/dist/dts/NodeStream.d.ts.map +1 -0
  71. package/dist/dts/NodeTerminal.d.ts +18 -0
  72. package/dist/dts/NodeTerminal.d.ts.map +1 -0
  73. package/dist/dts/internal/commandExecutor.d.ts +2 -0
  74. package/dist/dts/internal/commandExecutor.d.ts.map +1 -0
  75. package/dist/dts/internal/error.d.ts +2 -0
  76. package/dist/dts/internal/error.d.ts.map +1 -0
  77. package/dist/dts/internal/fileSystem.d.ts +2 -0
  78. package/dist/dts/internal/fileSystem.d.ts.map +1 -0
  79. package/dist/dts/internal/http/etag.d.ts +2 -0
  80. package/dist/dts/internal/http/etag.d.ts.map +1 -0
  81. package/dist/dts/internal/http/multipart.d.ts +2 -0
  82. package/dist/dts/internal/http/multipart.d.ts.map +1 -0
  83. package/dist/dts/internal/path.d.ts +2 -0
  84. package/dist/dts/internal/path.d.ts.map +1 -0
  85. package/dist/dts/internal/runtime.d.ts +2 -0
  86. package/dist/dts/internal/runtime.d.ts.map +1 -0
  87. package/dist/dts/internal/sink.d.ts +2 -0
  88. package/dist/dts/internal/sink.d.ts.map +1 -0
  89. package/dist/dts/internal/stream.d.ts +2 -0
  90. package/dist/dts/internal/stream.d.ts.map +1 -0
  91. package/dist/dts/internal/terminal.d.ts +2 -0
  92. package/dist/dts/internal/terminal.d.ts.map +1 -0
  93. package/dist/esm/Http/Etag.js +12 -0
  94. package/dist/esm/Http/Etag.js.map +1 -0
  95. package/dist/esm/Http/Multipart.js +17 -0
  96. package/dist/esm/Http/Multipart.js.map +1 -0
  97. package/dist/esm/NodeCommandExecutor.js +7 -0
  98. package/dist/esm/NodeCommandExecutor.js.map +1 -0
  99. package/dist/esm/NodeFileSystem.js +10 -0
  100. package/dist/esm/NodeFileSystem.js.map +1 -0
  101. package/dist/esm/NodeKeyValueStore.js +10 -0
  102. package/dist/esm/NodeKeyValueStore.js.map +1 -0
  103. package/dist/esm/NodePath.js +20 -0
  104. package/dist/esm/NodePath.js.map +1 -0
  105. package/dist/esm/NodeRuntime.js +7 -0
  106. package/dist/esm/NodeRuntime.js.map +1 -0
  107. package/dist/esm/NodeSink.js +12 -0
  108. package/dist/esm/NodeSink.js.map +1 -0
  109. package/dist/esm/NodeStream.js +37 -0
  110. package/dist/esm/NodeStream.js.map +1 -0
  111. package/dist/esm/NodeTerminal.js +12 -0
  112. package/dist/esm/NodeTerminal.js.map +1 -0
  113. package/dist/esm/internal/commandExecutor.js +120 -0
  114. package/dist/esm/internal/commandExecutor.js.map +1 -0
  115. package/dist/esm/internal/error.js +37 -0
  116. package/dist/esm/internal/error.js.map +1 -0
  117. package/dist/esm/internal/fileSystem.js +339 -0
  118. package/dist/esm/internal/fileSystem.js.map +1 -0
  119. package/dist/esm/internal/http/etag.js +43 -0
  120. package/dist/esm/internal/http/etag.js.map +1 -0
  121. package/dist/esm/internal/http/multipart.js +85 -0
  122. package/dist/esm/internal/http/multipart.js.map +1 -0
  123. package/dist/esm/internal/path.js +41 -0
  124. package/dist/esm/internal/path.js.map +1 -0
  125. package/dist/esm/internal/runtime.js +27 -0
  126. package/dist/esm/internal/runtime.js.map +1 -0
  127. package/dist/esm/internal/sink.js +19 -0
  128. package/dist/esm/internal/sink.js.map +1 -0
  129. package/dist/esm/internal/stream.js +170 -0
  130. package/dist/esm/internal/stream.js.map +1 -0
  131. package/dist/esm/internal/terminal.js +89 -0
  132. package/dist/esm/internal/terminal.js.map +1 -0
  133. package/dist/esm/package.json +4 -0
  134. package/package.json +105 -0
  135. package/src/Http/Etag.ts +18 -0
  136. package/src/Http/Multipart.ts +40 -0
  137. package/src/NodeCommandExecutor.ts +13 -0
  138. package/src/NodeFileSystem.ts +13 -0
  139. package/src/NodeKeyValueStore.ts +20 -0
  140. package/src/NodePath.ts +25 -0
  141. package/src/NodeRuntime.ts +11 -0
  142. package/src/NodeSink.ts +30 -0
  143. package/src/NodeStream.ts +109 -0
  144. package/src/NodeTerminal.ts +20 -0
  145. package/src/internal/commandExecutor.ts +203 -0
  146. package/src/internal/error.ts +51 -0
  147. package/src/internal/fileSystem.ts +575 -0
  148. package/src/internal/http/etag.ts +44 -0
  149. package/src/internal/http/multipart.ts +107 -0
  150. package/src/internal/path.ts +58 -0
  151. package/src/internal/runtime.ts +36 -0
  152. package/src/internal/sink.ts +57 -0
  153. package/src/internal/stream.ts +325 -0
  154. package/src/internal/terminal.ts +123 -0
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.writeInput = exports.writeEffect = exports.toUint8Array = exports.toString = exports.pipeThroughSimple = exports.pipeThroughDuplex = exports.fromReadableChannel = exports.fromReadable = exports.fromDuplex = void 0;
7
+ var _Error = /*#__PURE__*/require("@effect/platform/Error");
8
+ var Channel = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Channel"));
9
+ var Chunk = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Chunk"));
10
+ var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
11
+ var Either = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Either"));
12
+ var Exit = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Exit"));
13
+ var _Function = /*#__PURE__*/require("effect/Function");
14
+ var Queue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Queue"));
15
+ var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
16
+ function _getRequireWildcardCache(e) {
17
+ if ("function" != typeof WeakMap) return null;
18
+ var r = new WeakMap(),
19
+ t = new WeakMap();
20
+ return (_getRequireWildcardCache = function (e) {
21
+ return e ? t : r;
22
+ })(e);
23
+ }
24
+ function _interopRequireWildcard(e, r) {
25
+ if (!r && e && e.__esModule) return e;
26
+ if (null === e || "object" != typeof e && "function" != typeof e) return {
27
+ default: e
28
+ };
29
+ var t = _getRequireWildcardCache(r);
30
+ if (t && t.has(e)) return t.get(e);
31
+ var n = {
32
+ __proto__: null
33
+ },
34
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
35
+ for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) {
36
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
37
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
38
+ }
39
+ return n.default = e, t && t.set(e, n), n;
40
+ }
41
+ /** @internal */
42
+ const fromReadable = (evaluate, onError, {
43
+ chunkSize
44
+ } = {}) => Stream.fromChannel(fromReadableChannel(evaluate, onError, chunkSize ? Number(chunkSize) : undefined));
45
+ /** @internal */
46
+ exports.fromReadable = fromReadable;
47
+ const toString = (readable, options) => {
48
+ const maxBytesNumber = options.maxBytes ? Number(options.maxBytes) : undefined;
49
+ return Effect.acquireUseRelease(Effect.sync(() => {
50
+ const stream = readable();
51
+ stream.setEncoding(options.encoding ?? "utf8");
52
+ return stream;
53
+ }), stream => Effect.async(resume => {
54
+ let string = "";
55
+ let bytes = 0;
56
+ stream.once("error", err => {
57
+ resume(Effect.fail(options.onFailure(err)));
58
+ });
59
+ stream.once("end", () => {
60
+ resume(Effect.succeed(string));
61
+ });
62
+ stream.on("data", chunk => {
63
+ string += chunk;
64
+ bytes += Buffer.byteLength(chunk);
65
+ if (maxBytesNumber && bytes > maxBytesNumber) {
66
+ resume(Effect.fail(options.onFailure(new Error("maxBytes exceeded"))));
67
+ }
68
+ });
69
+ }), stream => Effect.sync(() => {
70
+ stream.removeAllListeners();
71
+ if ("closed" in stream && !stream.closed) {
72
+ stream.destroy();
73
+ }
74
+ }));
75
+ };
76
+ /** @internal */
77
+ exports.toString = toString;
78
+ const toUint8Array = (readable, options) => {
79
+ const maxBytesNumber = options.maxBytes ? Number(options.maxBytes) : undefined;
80
+ return Effect.acquireUseRelease(Effect.sync(readable), stream => Effect.async(resume => {
81
+ let buffer = Buffer.alloc(0);
82
+ let bytes = 0;
83
+ stream.once("error", err => {
84
+ resume(Effect.fail(options.onFailure(err)));
85
+ });
86
+ stream.once("end", () => {
87
+ resume(Effect.succeed(buffer));
88
+ });
89
+ stream.on("data", chunk => {
90
+ buffer = Buffer.concat([buffer, chunk]);
91
+ bytes += chunk.length;
92
+ if (maxBytesNumber && bytes > maxBytesNumber) {
93
+ resume(Effect.fail(options.onFailure(new Error("maxBytes exceeded"))));
94
+ }
95
+ });
96
+ }), stream => Effect.sync(() => {
97
+ stream.removeAllListeners();
98
+ if ("closed" in stream && !stream.closed) {
99
+ stream.destroy();
100
+ }
101
+ }));
102
+ };
103
+ /** @internal */
104
+ exports.toUint8Array = toUint8Array;
105
+ const fromDuplex = (evaluate, onError, options = {}) => Channel.acquireUseRelease(Effect.tap(Effect.zip(Effect.sync(evaluate), Queue.unbounded()), ([duplex, queue]) => readableOffer(duplex, queue, onError)), ([duplex, queue]) => Channel.embedInput(readableTake(duplex, queue, options.chunkSize ? Number(options.chunkSize) : undefined), writeInput(duplex, cause => Queue.offer(queue, Either.left(Exit.failCause(cause))), options)), ([duplex, queue]) => Effect.zipRight(Effect.sync(() => {
106
+ duplex.removeAllListeners();
107
+ if (!duplex.closed) {
108
+ duplex.destroy();
109
+ }
110
+ }), Queue.shutdown(queue)));
111
+ /** @internal */
112
+ exports.fromDuplex = fromDuplex;
113
+ 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)));
114
+ /** @internal */
115
+ const pipeThroughSimple = exports.pipeThroughSimple = /*#__PURE__*/(0, _Function.dual)(2, (self, duplex) => Stream.pipeThroughChannelOrFail(self, fromDuplex(duplex, error => (0, _Error.SystemError)({
116
+ module: "Stream",
117
+ method: "pipeThroughSimple",
118
+ pathOrDescriptor: "",
119
+ reason: "Unknown",
120
+ message: String(error)
121
+ }))));
122
+ /** @internal */
123
+ const fromReadableChannel = (evaluate, onError, chunkSize) => Channel.acquireUseRelease(Effect.tap(Effect.zip(Effect.sync(evaluate), Queue.unbounded()), ([readable, queue]) => readableOffer(readable, queue, onError)), ([readable, queue]) => readableTake(readable, queue, chunkSize), ([readable, queue]) => Effect.zipRight(Effect.sync(() => {
124
+ readable.removeAllListeners();
125
+ if ("closed" in readable && !readable.closed) {
126
+ readable.destroy();
127
+ }
128
+ }), Queue.shutdown(queue)));
129
+ /** @internal */
130
+ exports.fromReadableChannel = fromReadableChannel;
131
+ const writeInput = (writable, onFailure, {
132
+ encoding,
133
+ endOnDone = true
134
+ } = {}, onDone = Effect.unit) => {
135
+ const write = writeEffect(writable, encoding);
136
+ const close = endOnDone ? Effect.async(resume => {
137
+ if ("closed" in writable && writable.closed) {
138
+ resume(Effect.unit);
139
+ } else {
140
+ writable.once("finish", () => resume(Effect.unit));
141
+ writable.end();
142
+ }
143
+ }) : Effect.unit;
144
+ return {
145
+ awaitRead: () => Effect.unit,
146
+ emit: write,
147
+ error: cause => Effect.zipRight(close, onFailure(cause)),
148
+ done: _ => Effect.zipRight(close, onDone)
149
+ };
150
+ };
151
+ /** @internal */
152
+ exports.writeInput = writeInput;
153
+ const writeEffect = (writable, encoding) => chunk => chunk.length === 0 ? Effect.unit : Effect.async(resume => {
154
+ const iterator = chunk[Symbol.iterator]();
155
+ let next = iterator.next();
156
+ function loop() {
157
+ const item = next;
158
+ next = iterator.next();
159
+ const success = writable.write(item.value, encoding);
160
+ if (next.done) {
161
+ resume(Effect.unit);
162
+ } else if (success) {
163
+ loop();
164
+ } else {
165
+ writable.once("drain", loop);
166
+ }
167
+ }
168
+ loop();
169
+ });
170
+ exports.writeEffect = writeEffect;
171
+ const readableOffer = (readable, queue, onError) => Effect.sync(() => {
172
+ readable.on("readable", () => {
173
+ const size = queue.unsafeSize();
174
+ if (size._tag === "Some" && size.value <= 0) {
175
+ queue.unsafeOffer(Either.right(void 0));
176
+ }
177
+ });
178
+ readable.on("error", err => {
179
+ queue.unsafeOffer(Either.left(Exit.fail(onError(err))));
180
+ });
181
+ readable.on("end", () => {
182
+ queue.unsafeOffer(Either.left(Exit.unit));
183
+ });
184
+ if (readable.readable) {
185
+ queue.unsafeOffer(Either.right(void 0));
186
+ }
187
+ });
188
+ const readableTake = (readable, queue, chunkSize) => {
189
+ const read = readChunkChannel(readable, chunkSize);
190
+ const loop = Channel.flatMap(Queue.take(queue), Either.match({
191
+ onLeft: Exit.match({
192
+ onFailure: Channel.failCause,
193
+ onSuccess: _ => Channel.unit
194
+ }),
195
+ onRight: _ => Channel.flatMap(read, () => loop)
196
+ }));
197
+ return loop;
198
+ };
199
+ const readChunkChannel = (readable, chunkSize) => Channel.suspend(() => {
200
+ const arr = [];
201
+ let chunk = readable.read(chunkSize);
202
+ while (chunk !== null) {
203
+ arr.push(chunk);
204
+ chunk = readable.read(chunkSize);
205
+ }
206
+ return Channel.write(Chunk.unsafeFromArray(arr));
207
+ });
208
+ //# sourceMappingURL=stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.js","names":["_Error","require","Channel","_interopRequireWildcard","Chunk","Effect","Either","Exit","_Function","Queue","Stream","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","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","removeAllListeners","closed","destroy","toUint8Array","buffer","alloc","concat","length","fromDuplex","tap","zip","unbounded","duplex","queue","readableOffer","embedInput","readableTake","writeInput","cause","offer","left","failCause","zipRight","shutdown","pipeThroughDuplex","dual","args","StreamTypeId","self","pipeThroughChannelOrFail","pipeThroughSimple","error","SystemError","module","method","pathOrDescriptor","reason","message","String","writable","endOnDone","onDone","unit","write","writeEffect","close","end","awaitRead","emit","done","_","iterator","Symbol","next","loop","item","success","value","size","unsafeSize","_tag","unsafeOffer","right","read","readChunkChannel","flatMap","take","match","onLeft","onSuccess","onRight","suspend","arr","push","unsafeFromArray"],"sources":["../../../src/internal/stream.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.make = exports.layer = void 0;
7
+ var Error = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Error"));
8
+ var Terminal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Terminal"));
9
+ var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
10
+ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
11
+ var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Option"));
12
+ var readline = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:readline"));
13
+ function _getRequireWildcardCache(e) {
14
+ if ("function" != typeof WeakMap) return null;
15
+ var r = new WeakMap(),
16
+ t = new WeakMap();
17
+ return (_getRequireWildcardCache = function (e) {
18
+ return e ? t : r;
19
+ })(e);
20
+ }
21
+ function _interopRequireWildcard(e, r) {
22
+ if (!r && e && e.__esModule) return e;
23
+ if (null === e || "object" != typeof e && "function" != typeof e) return {
24
+ default: e
25
+ };
26
+ var t = _getRequireWildcardCache(r);
27
+ if (t && t.has(e)) return t.get(e);
28
+ var n = {
29
+ __proto__: null
30
+ },
31
+ a = Object.defineProperty && Object.getOwnPropertyDescriptor;
32
+ for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) {
33
+ var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
34
+ i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
35
+ }
36
+ return n.default = e, t && t.set(e, n), n;
37
+ }
38
+ const defaultShouldQuit = input => input.key.ctrl && (input.key.name === "c" || input.key.name === "d");
39
+ /** @internal */
40
+ const make = (shouldQuit = defaultShouldQuit) => Effect.gen(function* (_) {
41
+ const input = yield* _(Effect.sync(() => globalThis.process.stdin));
42
+ const output = yield* _(Effect.sync(() => globalThis.process.stdout));
43
+ // Acquire a readline interface
44
+ const acquireReadlineInterface = Effect.sync(() => readline.createInterface({
45
+ input,
46
+ escapeCodeTimeout: 50
47
+ }));
48
+ // Uses the readline interface to force `stdin` to emit keypress events
49
+ const emitKeypressEvents = rl => {
50
+ readline.emitKeypressEvents(input, rl);
51
+ if (input.isTTY) {
52
+ input.setRawMode(true);
53
+ }
54
+ return rl;
55
+ };
56
+ // Close the `readline` interface
57
+ const releaseReadlineInterface = rl => Effect.sync(() => {
58
+ if (input.isTTY) {
59
+ input.setRawMode(false);
60
+ }
61
+ rl.close();
62
+ });
63
+ // Handle the `"keypress"` event emitted by `stdin` (forced by readline)
64
+ const handleKeypressEvent = input => Effect.async(resume => {
65
+ const handleKeypress = (input, key) => {
66
+ const userInput = {
67
+ input: Option.fromNullable(input),
68
+ key: {
69
+ name: key.name || "",
70
+ ctrl: key.ctrl || false,
71
+ meta: key.meta || false,
72
+ shift: key.shift || false
73
+ }
74
+ };
75
+ if (shouldQuit(userInput)) {
76
+ resume(Effect.fail(new Terminal.QuitException()));
77
+ } else {
78
+ resume(Effect.succeed(userInput));
79
+ }
80
+ };
81
+ input.once("keypress", handleKeypress);
82
+ return Effect.sync(() => {
83
+ input.removeListener("keypress", handleKeypress);
84
+ });
85
+ });
86
+ // Handle the `"line"` event emitted by the readline interface
87
+ const handleLineEvent = rl => Effect.async(resume => {
88
+ const handleLine = line => {
89
+ resume(Effect.succeed(line));
90
+ };
91
+ rl.on("line", handleLine);
92
+ return Effect.sync(() => {
93
+ rl.removeListener("line", handleLine);
94
+ });
95
+ });
96
+ const readInput = Effect.acquireUseRelease(acquireReadlineInterface.pipe(Effect.map(emitKeypressEvents)), () => handleKeypressEvent(input), releaseReadlineInterface);
97
+ const readLine = Effect.acquireUseRelease(acquireReadlineInterface, rl => handleLineEvent(rl), releaseReadlineInterface);
98
+ const display = prompt => Effect.uninterruptible(Effect.async(resume => {
99
+ output.write(prompt, err => {
100
+ if (err) {
101
+ resume(Effect.fail(Error.BadArgument({
102
+ module: "Terminal",
103
+ method: "display",
104
+ message: err.message ?? String(err)
105
+ })));
106
+ }
107
+ resume(Effect.unit);
108
+ });
109
+ }));
110
+ return Terminal.Terminal.of({
111
+ // The columns property can be undefined if stdout was redirected
112
+ columns: Effect.sync(() => output.columns || 0),
113
+ readInput,
114
+ readLine,
115
+ display
116
+ });
117
+ });
118
+ /** @internal */
119
+ exports.make = make;
120
+ const layer = exports.layer = /*#__PURE__*/Layer.scoped(Terminal.Terminal, /*#__PURE__*/make(defaultShouldQuit));
121
+ //# sourceMappingURL=terminal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.js","names":["Error","_interopRequireWildcard","require","Terminal","Effect","Layer","Option","readline","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","defaultShouldQuit","input","key","ctrl","name","make","shouldQuit","gen","_","sync","globalThis","process","stdin","output","stdout","acquireReadlineInterface","createInterface","escapeCodeTimeout","emitKeypressEvents","rl","isTTY","setRawMode","releaseReadlineInterface","close","handleKeypressEvent","async","resume","handleKeypress","userInput","fromNullable","meta","shift","fail","QuitException","succeed","once","removeListener","handleLineEvent","handleLine","line","on","readInput","acquireUseRelease","pipe","map","readLine","display","prompt","uninterruptible","write","err","BadArgument","module","method","message","String","unit","of","columns","exports","layer","scoped"],"sources":["../../../src/internal/terminal.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type * as Etag from "@effect/platform/Http/Etag";
5
+ import type * as Layer from "effect/Layer";
6
+ /**
7
+ * @since 1.0.0
8
+ * @category layers
9
+ */
10
+ export declare const layer: Layer.Layer<Etag.Generator>;
11
+ /**
12
+ * @since 1.0.0
13
+ * @category layers
14
+ */
15
+ export declare const layerWeak: Layer.Layer<Etag.Generator>;
16
+ //# sourceMappingURL=Etag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Etag.d.ts","sourceRoot":"","sources":["../../../src/Http/Etag.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,IAAI,MAAM,4BAA4B,CAAA;AACvD,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAG1C;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAkB,CAAA;AAEhE;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAsB,CAAA"}
@@ -0,0 +1,29 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ /// <reference types="node" resolution-mode="require"/>
3
+ /**
4
+ * @since 1.0.0
5
+ */
6
+ import type * as FileSystem from "@effect/platform/FileSystem";
7
+ import type * as Multipart from "@effect/platform/Http/Multipart";
8
+ import type * as Path from "@effect/platform/Path";
9
+ import type * as Effect from "effect/Effect";
10
+ import type * as Scope from "effect/Scope";
11
+ import type * as Stream from "effect/Stream";
12
+ import type { IncomingHttpHeaders } from "node:http";
13
+ import type { Readable } from "node:stream";
14
+ /**
15
+ * @since 1.0.0
16
+ * @category constructors
17
+ */
18
+ export declare const stream: (source: Readable, headers: IncomingHttpHeaders) => Stream.Stream<Multipart.Part, Multipart.MultipartError>;
19
+ /**
20
+ * @since 1.0.0
21
+ * @category constructors
22
+ */
23
+ export declare const persisted: (source: Readable, headers: IncomingHttpHeaders) => Effect.Effect<Multipart.Persisted, Multipart.MultipartError, FileSystem.FileSystem | Path.Path | Scope.Scope>;
24
+ /**
25
+ * @since 1.0.0
26
+ * @category conversions
27
+ */
28
+ export declare const fileToReadable: (file: Multipart.File) => Readable;
29
+ //# sourceMappingURL=Multipart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Multipart.d.ts","sourceRoot":"","sources":["../../../src/Http/Multipart.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,KAAK,SAAS,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,CACnB,MAAM,EAAE,QAAQ,EAChB,OAAO,EAAE,mBAAmB,KACzB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAmB,CAAA;AAE9E;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,CACtB,MAAM,EAAE,QAAQ,EAChB,OAAO,EAAE,mBAAmB,KACzB,MAAM,CAAC,MAAM,CAChB,SAAS,CAAC,SAAS,EACnB,SAAS,CAAC,cAAc,EACxB,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAC3B,CAAA;AAEtB;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,QAAkC,CAAA"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { CommandExecutor } from "@effect/platform/CommandExecutor";
5
+ import type { FileSystem } from "@effect/platform/FileSystem";
6
+ import type { Layer } from "effect/Layer";
7
+ /**
8
+ * @since 1.0.0
9
+ * @category layer
10
+ */
11
+ export declare const layer: Layer<CommandExecutor, never, FileSystem>;
12
+ //# sourceMappingURL=NodeCommandExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeCommandExecutor.d.ts","sourceRoot":"","sources":["../../src/NodeCommandExecutor.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAGzC;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,eAAe,EAAE,KAAK,EAAE,UAAU,CAAkB,CAAA"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { FileSystem } from "@effect/platform/FileSystem";
5
+ import type { Layer } from "effect/Layer";
6
+ /**
7
+ * @since 1.0.0
8
+ * @category layer
9
+ */
10
+ export declare const layer: Layer<FileSystem>;
11
+ //# sourceMappingURL=NodeFileSystem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeFileSystem.d.ts","sourceRoot":"","sources":["../../src/NodeFileSystem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAGzC;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,UAAU,CAAkB,CAAA"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type * as PlatformError from "@effect/platform/Error";
5
+ import * as KeyValueStore from "@effect/platform/KeyValueStore";
6
+ import * as Layer from "effect/Layer";
7
+ /**
8
+ * @since 1.0.0
9
+ * @category layers
10
+ */
11
+ export declare const layerFileSystem: (directory: string) => Layer.Layer<KeyValueStore.KeyValueStore, PlatformError.PlatformError>;
12
+ //# sourceMappingURL=NodeKeyValueStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeKeyValueStore.d.ts","sourceRoot":"","sources":["../../src/NodeKeyValueStore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,aAAa,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAA;AAC/D,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,CAC5B,SAAS,EAAE,MAAM,KACd,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,CAAC,aAAa,CAItE,CAAA"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { Path } from "@effect/platform/Path";
5
+ import type { Layer } from "effect/Layer";
6
+ /**
7
+ * @since 1.0.0
8
+ * @category layer
9
+ */
10
+ export declare const layer: Layer<Path>;
11
+ /**
12
+ * @since 1.0.0
13
+ * @category layer
14
+ */
15
+ export declare const layerPosix: Layer<Path>;
16
+ /**
17
+ * @since 1.0.0
18
+ * @category layer
19
+ */
20
+ export declare const layerWin32: Layer<Path>;
21
+ //# sourceMappingURL=NodePath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodePath.d.ts","sourceRoot":"","sources":["../../src/NodePath.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAGzC;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,IAAI,CAAkB,CAAA;AAEhD;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,IAAI,CAAuB,CAAA;AAE1D;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,IAAI,CAAuB,CAAA"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { RunMain } from "@effect/platform/Runtime";
5
+ /**
6
+ * @since 1.0.0
7
+ * @category runtime
8
+ */
9
+ export declare const runMain: RunMain;
10
+ //# sourceMappingURL=NodeRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeRuntime.d.ts","sourceRoot":"","sources":["../../src/NodeRuntime.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAGvD;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,OAA0B,CAAA"}
@@ -0,0 +1,22 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ /// <reference types="node" resolution-mode="require"/>
3
+ /**
4
+ * @since 1.0.0
5
+ */
6
+ import type { Channel } from "effect/Channel";
7
+ import type { Chunk } from "effect/Chunk";
8
+ import type { LazyArg } from "effect/Function";
9
+ import type { Sink } from "effect/Sink";
10
+ import type { Writable } from "stream";
11
+ import type { FromWritableOptions } from "./NodeStream.js";
12
+ /**
13
+ * @category constructor
14
+ * @since 1.0.0
15
+ */
16
+ export declare const fromWritable: <E, A = string | Uint8Array>(evaluate: LazyArg<Writable | NodeJS.WritableStream>, onError: (error: unknown) => E, options?: FromWritableOptions) => Sink<never, E, A, never, void>;
17
+ /**
18
+ * @category constructor
19
+ * @since 1.0.0
20
+ */
21
+ export declare const fromWritableChannel: <IE, OE, A>(writable: LazyArg<Writable | NodeJS.WritableStream>, onError: (error: unknown) => OE, options?: FromWritableOptions) => Channel<never, IE, Chunk<A>, unknown, IE | OE, Chunk<never>, void>;
22
+ //# sourceMappingURL=NodeSink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeSink.d.ts","sourceRoot":"","sources":["../../src/NodeSink.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,UAAU,EACpD,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,EACnD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,EAC9B,OAAO,CAAC,EAAE,mBAAmB,KAC1B,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAyB,CAAA;AAE3D;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,EACnD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,EAAE,EAC/B,OAAO,CAAC,EAAE,mBAAmB,KAC1B,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,CAAgC,CAAA"}
@@ -0,0 +1,79 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ /// <reference types="node" resolution-mode="require"/>
3
+ /// <reference types="node" resolution-mode="require"/>
4
+ /**
5
+ * @since 1.0.0
6
+ */
7
+ import type { PlatformError } from "@effect/platform/Error";
8
+ import type { SizeInput } from "@effect/platform/FileSystem";
9
+ import type { Channel } from "effect/Channel";
10
+ import type { Chunk } from "effect/Chunk";
11
+ import type { Effect } from "effect/Effect";
12
+ import type { LazyArg } from "effect/Function";
13
+ import type { Stream } from "effect/Stream";
14
+ import type { Duplex, Readable } from "node:stream";
15
+ /**
16
+ * @category models
17
+ * @since 1.0.0
18
+ */
19
+ export interface FromReadableOptions {
20
+ /** Defaults to undefined, which lets Node.js decide the chunk size */
21
+ readonly chunkSize?: SizeInput;
22
+ }
23
+ /**
24
+ * @category model
25
+ * @since 1.0.0
26
+ */
27
+ export interface FromWritableOptions {
28
+ readonly endOnDone?: boolean;
29
+ readonly encoding?: BufferEncoding;
30
+ }
31
+ /**
32
+ * @category constructors
33
+ * @since 1.0.0
34
+ */
35
+ export declare const fromReadable: <E, A = Uint8Array>(evaluate: LazyArg<Readable | NodeJS.ReadableStream>, onError: (error: unknown) => E, { chunkSize }?: FromReadableOptions) => Stream<A, E>;
36
+ /**
37
+ * @category constructors
38
+ * @since 1.0.0
39
+ */
40
+ export declare const fromReadableChannel: <E, A = Uint8Array>(evaluate: LazyArg<Readable | NodeJS.ReadableStream>, onError: (error: unknown) => E, chunkSize: number | undefined) => Channel<never, unknown, unknown, unknown, E, Chunk<A>, void>;
41
+ /**
42
+ * @category constructors
43
+ * @since 1.0.0
44
+ */
45
+ export declare const fromDuplex: <IE, E, I = Uint8Array, O = Uint8Array>(evaluate: LazyArg<Duplex>, onError: (error: unknown) => E, options?: FromReadableOptions & FromWritableOptions) => Channel<never, IE, Chunk<I>, unknown, IE | E, Chunk<O>, void>;
46
+ /**
47
+ * @category combinators
48
+ * @since 1.0.0
49
+ */
50
+ export declare const pipeThroughDuplex: {
51
+ <E2, B = Uint8Array>(duplex: LazyArg<Duplex>, onError: (error: unknown) => E2, options?: (FromReadableOptions & FromWritableOptions) | undefined): <R, E, A>(self: Stream<A, E, R>) => Stream<B, E2 | E, R>;
52
+ <R, E, A, E2, B = Uint8Array>(self: Stream<A, E, R>, duplex: LazyArg<Duplex>, onError: (error: unknown) => E2, options?: (FromReadableOptions & FromWritableOptions) | undefined): Stream<B, E | E2, R>;
53
+ };
54
+ /**
55
+ * @category combinators
56
+ * @since 1.0.0
57
+ */
58
+ export declare const pipeThroughSimple: {
59
+ (duplex: LazyArg<Duplex>): <R, E>(self: Stream<string | Uint8Array, E, R>) => Stream<Uint8Array, E | PlatformError, R>;
60
+ <R, E>(self: Stream<string | Uint8Array, E, R>, duplex: LazyArg<Duplex>): Stream<Uint8Array, PlatformError | E, R>;
61
+ };
62
+ /**
63
+ * @since 1.0.0
64
+ * @category conversions
65
+ */
66
+ export declare const toString: <E>(readable: LazyArg<Readable | NodeJS.ReadableStream>, options: {
67
+ readonly onFailure: (error: unknown) => E;
68
+ readonly encoding?: BufferEncoding | undefined;
69
+ readonly maxBytes?: SizeInput | undefined;
70
+ }) => Effect<string, E>;
71
+ /**
72
+ * @since 1.0.0
73
+ * @category conversions
74
+ */
75
+ export declare const toUint8Array: <E>(readable: LazyArg<Readable | NodeJS.ReadableStream>, options: {
76
+ readonly onFailure: (error: unknown) => E;
77
+ readonly maxBytes?: SizeInput | undefined;
78
+ }) => Effect<Uint8Array, E>;
79
+ //# sourceMappingURL=NodeStream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeStream.d.ts","sourceRoot":"","sources":["../../src/NodeStream.ts"],"names":[],"mappings":"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"}