aboutsummaryrefslogtreecommitdiff
path: root/node_modules/fast-glob/out/providers/stream.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/fast-glob/out/providers/stream.js')
-rw-r--r--node_modules/fast-glob/out/providers/stream.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/node_modules/fast-glob/out/providers/stream.js b/node_modules/fast-glob/out/providers/stream.js
new file mode 100644
index 0000000..85da62e
--- /dev/null
+++ b/node_modules/fast-glob/out/providers/stream.js
@@ -0,0 +1,31 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+const stream_1 = require("stream");
+const stream_2 = require("../readers/stream");
+const provider_1 = require("./provider");
+class ProviderStream extends provider_1.default {
+ constructor() {
+ super(...arguments);
+ this._reader = new stream_2.default(this._settings);
+ }
+ read(task) {
+ const root = this._getRootDirectory(task);
+ const options = this._getReaderOptions(task);
+ const source = this.api(root, task, options);
+ const destination = new stream_1.Readable({ objectMode: true, read: () => { } });
+ source
+ .once('error', (error) => destination.emit('error', error))
+ .on('data', (entry) => destination.emit('data', options.transform(entry)))
+ .once('end', () => destination.emit('end'));
+ destination
+ .once('close', () => source.destroy());
+ return destination;
+ }
+ api(root, task, options) {
+ if (task.dynamic) {
+ return this._reader.dynamic(root, options);
+ }
+ return this._reader.static(task.patterns, options);
+ }
+}
+exports.default = ProviderStream;