🐛 Update: Added support for the 'find' command in settings.local.json. Enhanced logging for various modules, including initialization and performance metrics. Improved SQLite database optimization and ensured better tracking of user interactions and system processes. 📚
This commit is contained in:
68
network-visualization/node_modules/from/index.js
generated
vendored
Normal file
68
network-visualization/node_modules/from/index.js
generated
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
var Stream = require('stream')
|
||||
|
||||
// from
|
||||
//
|
||||
// a stream that reads from an source.
|
||||
// source may be an array, or a function.
|
||||
// from handles pause behaviour for you.
|
||||
|
||||
module.exports =
|
||||
function from (source) {
|
||||
if(Array.isArray(source)) {
|
||||
var source_index = 0, source_len = source.length;
|
||||
return from (function (i) {
|
||||
if(source_index < source_len)
|
||||
this.emit('data', source[source_index++])
|
||||
else
|
||||
this.emit('end')
|
||||
return true
|
||||
})
|
||||
}
|
||||
var s = new Stream(), i = 0
|
||||
s.ended = false
|
||||
s.started = false
|
||||
s.readable = true
|
||||
s.writable = false
|
||||
s.paused = false
|
||||
s.ended = false
|
||||
s.pause = function () {
|
||||
s.started = true
|
||||
s.paused = true
|
||||
}
|
||||
function next () {
|
||||
s.started = true
|
||||
if(s.ended) return
|
||||
while(!s.ended && !s.paused && source.call(s, i++, function () {
|
||||
if(!s.ended && !s.paused)
|
||||
process.nextTick(next);
|
||||
}))
|
||||
;
|
||||
}
|
||||
s.resume = function () {
|
||||
s.started = true
|
||||
s.paused = false
|
||||
next()
|
||||
}
|
||||
s.on('end', function () {
|
||||
s.ended = true
|
||||
s.readable = false
|
||||
process.nextTick(s.destroy)
|
||||
})
|
||||
s.destroy = function () {
|
||||
s.ended = true
|
||||
s.emit('close')
|
||||
}
|
||||
/*
|
||||
by default, the stream will start emitting at nextTick
|
||||
if you want, you can pause it, after pipeing.
|
||||
you can also resume before next tick, and that will also
|
||||
work.
|
||||
*/
|
||||
process.nextTick(function () {
|
||||
if(!s.started) s.resume()
|
||||
})
|
||||
return s
|
||||
}
|
Reference in New Issue
Block a user