Spaces:
Running
Running
Download node_modules/run-parallel/index.js from Chunte/HFBA: direct link, hf CLI and curl.
- Browser
- Download file 1.03 kB
-
https://huggingface.co/spaces/Chunte/HFBA/resolve/refs%2Fpr%2F1/node_modules/run-parallel/index.js
- Command line
-
hf download hf://spaces/Chunte/HFBA@refs/pr/1/node_modules/run-parallel/index.js
-
curl -L -o index.js https://huggingface.co/spaces/Chunte/HFBA/resolve/refs%2Fpr%2F1/node_modules/run-parallel/index.js
1.03 kB
| /*! run-parallel. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */ | |
| module.exports = runParallel | |
| const queueMicrotask = require('queue-microtask') | |
| function runParallel (tasks, cb) { | |
| let results, pending, keys | |
| let isSync = true | |
| if (Array.isArray(tasks)) { | |
| results = [] | |
| pending = tasks.length | |
| } else { | |
| keys = Object.keys(tasks) | |
| results = {} | |
| pending = keys.length | |
| } | |
| function done (err) { | |
| function end () { | |
| if (cb) cb(err, results) | |
| cb = null | |
| } | |
| if (isSync) queueMicrotask(end) | |
| else end() | |
| } | |
| function each (i, err, result) { | |
| results[i] = result | |
| if (--pending === 0 || err) { | |
| done(err) | |
| } | |
| } | |
| if (!pending) { | |
| // empty | |
| done(null) | |
| } else if (keys) { | |
| // object | |
| keys.forEach(function (key) { | |
| tasks[key](function (err, result) { each(key, err, result) }) | |
| }) | |
| } else { | |
| // array | |
| tasks.forEach(function (task, i) { | |
| task(function (err, result) { each(i, err, result) }) | |
| }) | |
| } | |
| isSync = false | |
| } | |