rahad-all-downloader 2.1.15 → 2.1.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (186) hide show
  1. package/.github/workflows/Run.yml +20 -0
  2. package/README.md +0 -1
  3. package/index.js +1 -1
  4. package/package.json +4 -2
  5. package/.cache/nix/binary-cache-v6.sqlite +0 -0
  6. package/.cache/nix/binary-cache-v6.sqlite-journal +0 -0
  7. package/.cache/replit/modules/nix.res +0 -1
  8. package/.cache/replit/modules/nodejs-20.res +0 -1
  9. package/.cache/replit/modules/replit.res +0 -1
  10. package/.cache/replit/modules.stamp +0 -0
  11. package/.cache/replit/nix/env.json +0 -1
  12. package/.cache/typescript/5.4/node_modules/.package-lock.json +0 -137
  13. package/.cache/typescript/5.4/node_modules/@types/caseless/LICENSE +0 -21
  14. package/.cache/typescript/5.4/node_modules/@types/caseless/README.md +0 -48
  15. package/.cache/typescript/5.4/node_modules/@types/caseless/index.d.ts +0 -29
  16. package/.cache/typescript/5.4/node_modules/@types/caseless/package.json +0 -35
  17. package/.cache/typescript/5.4/node_modules/@types/node/LICENSE +0 -21
  18. package/.cache/typescript/5.4/node_modules/@types/node/README.md +0 -15
  19. package/.cache/typescript/5.4/node_modules/@types/node/assert/strict.d.ts +0 -8
  20. package/.cache/typescript/5.4/node_modules/@types/node/assert.d.ts +0 -1040
  21. package/.cache/typescript/5.4/node_modules/@types/node/async_hooks.d.ts +0 -541
  22. package/.cache/typescript/5.4/node_modules/@types/node/buffer.d.ts +0 -2363
  23. package/.cache/typescript/5.4/node_modules/@types/node/child_process.d.ts +0 -1544
  24. package/.cache/typescript/5.4/node_modules/@types/node/cluster.d.ts +0 -578
  25. package/.cache/typescript/5.4/node_modules/@types/node/console.d.ts +0 -452
  26. package/.cache/typescript/5.4/node_modules/@types/node/constants.d.ts +0 -19
  27. package/.cache/typescript/5.4/node_modules/@types/node/crypto.d.ts +0 -4523
  28. package/.cache/typescript/5.4/node_modules/@types/node/dgram.d.ts +0 -596
  29. package/.cache/typescript/5.4/node_modules/@types/node/diagnostics_channel.d.ts +0 -554
  30. package/.cache/typescript/5.4/node_modules/@types/node/dns/promises.d.ts +0 -474
  31. package/.cache/typescript/5.4/node_modules/@types/node/dns.d.ts +0 -864
  32. package/.cache/typescript/5.4/node_modules/@types/node/dom-events.d.ts +0 -124
  33. package/.cache/typescript/5.4/node_modules/@types/node/domain.d.ts +0 -170
  34. package/.cache/typescript/5.4/node_modules/@types/node/events.d.ts +0 -909
  35. package/.cache/typescript/5.4/node_modules/@types/node/fs/promises.d.ts +0 -1245
  36. package/.cache/typescript/5.4/node_modules/@types/node/fs.d.ts +0 -4317
  37. package/.cache/typescript/5.4/node_modules/@types/node/globals.d.ts +0 -411
  38. package/.cache/typescript/5.4/node_modules/@types/node/globals.global.d.ts +0 -1
  39. package/.cache/typescript/5.4/node_modules/@types/node/http.d.ts +0 -1908
  40. package/.cache/typescript/5.4/node_modules/@types/node/http2.d.ts +0 -2418
  41. package/.cache/typescript/5.4/node_modules/@types/node/https.d.ts +0 -550
  42. package/.cache/typescript/5.4/node_modules/@types/node/index.d.ts +0 -89
  43. package/.cache/typescript/5.4/node_modules/@types/node/inspector.d.ts +0 -2746
  44. package/.cache/typescript/5.4/node_modules/@types/node/module.d.ts +0 -315
  45. package/.cache/typescript/5.4/node_modules/@types/node/net.d.ts +0 -999
  46. package/.cache/typescript/5.4/node_modules/@types/node/os.d.ts +0 -495
  47. package/.cache/typescript/5.4/node_modules/@types/node/package.json +0 -217
  48. package/.cache/typescript/5.4/node_modules/@types/node/path.d.ts +0 -191
  49. package/.cache/typescript/5.4/node_modules/@types/node/perf_hooks.d.ts +0 -905
  50. package/.cache/typescript/5.4/node_modules/@types/node/process.d.ts +0 -1754
  51. package/.cache/typescript/5.4/node_modules/@types/node/punycode.d.ts +0 -117
  52. package/.cache/typescript/5.4/node_modules/@types/node/querystring.d.ts +0 -153
  53. package/.cache/typescript/5.4/node_modules/@types/node/readline/promises.d.ts +0 -150
  54. package/.cache/typescript/5.4/node_modules/@types/node/readline.d.ts +0 -540
  55. package/.cache/typescript/5.4/node_modules/@types/node/repl.d.ts +0 -430
  56. package/.cache/typescript/5.4/node_modules/@types/node/sea.d.ts +0 -153
  57. package/.cache/typescript/5.4/node_modules/@types/node/stream/consumers.d.ts +0 -12
  58. package/.cache/typescript/5.4/node_modules/@types/node/stream/promises.d.ts +0 -83
  59. package/.cache/typescript/5.4/node_modules/@types/node/stream/web.d.ts +0 -367
  60. package/.cache/typescript/5.4/node_modules/@types/node/stream.d.ts +0 -1707
  61. package/.cache/typescript/5.4/node_modules/@types/node/string_decoder.d.ts +0 -67
  62. package/.cache/typescript/5.4/node_modules/@types/node/test.d.ts +0 -1718
  63. package/.cache/typescript/5.4/node_modules/@types/node/timers/promises.d.ts +0 -97
  64. package/.cache/typescript/5.4/node_modules/@types/node/timers.d.ts +0 -240
  65. package/.cache/typescript/5.4/node_modules/@types/node/tls.d.ts +0 -1217
  66. package/.cache/typescript/5.4/node_modules/@types/node/trace_events.d.ts +0 -197
  67. package/.cache/typescript/5.4/node_modules/@types/node/tty.d.ts +0 -208
  68. package/.cache/typescript/5.4/node_modules/@types/node/url.d.ts +0 -952
  69. package/.cache/typescript/5.4/node_modules/@types/node/util.d.ts +0 -2292
  70. package/.cache/typescript/5.4/node_modules/@types/node/v8.d.ts +0 -808
  71. package/.cache/typescript/5.4/node_modules/@types/node/vm.d.ts +0 -924
  72. package/.cache/typescript/5.4/node_modules/@types/node/wasi.d.ts +0 -181
  73. package/.cache/typescript/5.4/node_modules/@types/node/worker_threads.d.ts +0 -691
  74. package/.cache/typescript/5.4/node_modules/@types/node/zlib.d.ts +0 -530
  75. package/.cache/typescript/5.4/node_modules/@types/node-fetch/LICENSE +0 -21
  76. package/.cache/typescript/5.4/node_modules/@types/node-fetch/README.md +0 -15
  77. package/.cache/typescript/5.4/node_modules/@types/node-fetch/externals.d.ts +0 -32
  78. package/.cache/typescript/5.4/node_modules/@types/node-fetch/index.d.ts +0 -238
  79. package/.cache/typescript/5.4/node_modules/@types/node-fetch/package.json +0 -83
  80. package/.cache/typescript/5.4/node_modules/@types/request/LICENSE +0 -21
  81. package/.cache/typescript/5.4/node_modules/@types/request/README.md +0 -15
  82. package/.cache/typescript/5.4/node_modules/@types/request/index.d.ts +0 -395
  83. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/License +0 -19
  84. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/README.md +0 -350
  85. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/README.md.bak +0 -350
  86. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/index.d.ts +0 -51
  87. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/lib/browser.js +0 -2
  88. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/lib/form_data.js +0 -483
  89. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/lib/populate.js +0 -10
  90. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/package.json +0 -68
  91. package/.cache/typescript/5.4/node_modules/@types/request/package.json +0 -70
  92. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/LICENSE +0 -21
  93. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/README.md +0 -15
  94. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/index.d.ts +0 -321
  95. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/package.json +0 -35
  96. package/.cache/typescript/5.4/node_modules/asynckit/LICENSE +0 -21
  97. package/.cache/typescript/5.4/node_modules/asynckit/README.md +0 -233
  98. package/.cache/typescript/5.4/node_modules/asynckit/bench.js +0 -76
  99. package/.cache/typescript/5.4/node_modules/asynckit/index.js +0 -6
  100. package/.cache/typescript/5.4/node_modules/asynckit/lib/abort.js +0 -29
  101. package/.cache/typescript/5.4/node_modules/asynckit/lib/async.js +0 -34
  102. package/.cache/typescript/5.4/node_modules/asynckit/lib/defer.js +0 -26
  103. package/.cache/typescript/5.4/node_modules/asynckit/lib/iterate.js +0 -75
  104. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  105. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_parallel.js +0 -25
  106. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_serial.js +0 -25
  107. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  108. package/.cache/typescript/5.4/node_modules/asynckit/lib/state.js +0 -37
  109. package/.cache/typescript/5.4/node_modules/asynckit/lib/streamify.js +0 -141
  110. package/.cache/typescript/5.4/node_modules/asynckit/lib/terminator.js +0 -29
  111. package/.cache/typescript/5.4/node_modules/asynckit/package.json +0 -63
  112. package/.cache/typescript/5.4/node_modules/asynckit/parallel.js +0 -43
  113. package/.cache/typescript/5.4/node_modules/asynckit/serial.js +0 -17
  114. package/.cache/typescript/5.4/node_modules/asynckit/serialOrdered.js +0 -75
  115. package/.cache/typescript/5.4/node_modules/asynckit/stream.js +0 -21
  116. package/.cache/typescript/5.4/node_modules/combined-stream/License +0 -19
  117. package/.cache/typescript/5.4/node_modules/combined-stream/Readme.md +0 -138
  118. package/.cache/typescript/5.4/node_modules/combined-stream/lib/combined_stream.js +0 -208
  119. package/.cache/typescript/5.4/node_modules/combined-stream/package.json +0 -25
  120. package/.cache/typescript/5.4/node_modules/combined-stream/yarn.lock +0 -17
  121. package/.cache/typescript/5.4/node_modules/delayed-stream/License +0 -19
  122. package/.cache/typescript/5.4/node_modules/delayed-stream/Makefile +0 -7
  123. package/.cache/typescript/5.4/node_modules/delayed-stream/Readme.md +0 -141
  124. package/.cache/typescript/5.4/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  125. package/.cache/typescript/5.4/node_modules/delayed-stream/package.json +0 -27
  126. package/.cache/typescript/5.4/node_modules/form-data/License +0 -19
  127. package/.cache/typescript/5.4/node_modules/form-data/README.md.bak +0 -358
  128. package/.cache/typescript/5.4/node_modules/form-data/Readme.md +0 -358
  129. package/.cache/typescript/5.4/node_modules/form-data/index.d.ts +0 -62
  130. package/.cache/typescript/5.4/node_modules/form-data/lib/browser.js +0 -2
  131. package/.cache/typescript/5.4/node_modules/form-data/lib/form_data.js +0 -501
  132. package/.cache/typescript/5.4/node_modules/form-data/lib/populate.js +0 -10
  133. package/.cache/typescript/5.4/node_modules/form-data/package.json +0 -68
  134. package/.cache/typescript/5.4/node_modules/mime-db/HISTORY.md +0 -507
  135. package/.cache/typescript/5.4/node_modules/mime-db/LICENSE +0 -23
  136. package/.cache/typescript/5.4/node_modules/mime-db/README.md +0 -100
  137. package/.cache/typescript/5.4/node_modules/mime-db/db.json +0 -8519
  138. package/.cache/typescript/5.4/node_modules/mime-db/index.js +0 -12
  139. package/.cache/typescript/5.4/node_modules/mime-db/package.json +0 -60
  140. package/.cache/typescript/5.4/node_modules/mime-types/HISTORY.md +0 -397
  141. package/.cache/typescript/5.4/node_modules/mime-types/LICENSE +0 -23
  142. package/.cache/typescript/5.4/node_modules/mime-types/README.md +0 -113
  143. package/.cache/typescript/5.4/node_modules/mime-types/index.js +0 -188
  144. package/.cache/typescript/5.4/node_modules/mime-types/package.json +0 -44
  145. package/.cache/typescript/5.4/node_modules/types-registry/README.md +0 -2
  146. package/.cache/typescript/5.4/node_modules/types-registry/index.json +0 -1
  147. package/.cache/typescript/5.4/node_modules/types-registry/package.json +0 -20
  148. package/.cache/typescript/5.4/node_modules/undici-types/README.md +0 -6
  149. package/.cache/typescript/5.4/node_modules/undici-types/agent.d.ts +0 -31
  150. package/.cache/typescript/5.4/node_modules/undici-types/api.d.ts +0 -43
  151. package/.cache/typescript/5.4/node_modules/undici-types/balanced-pool.d.ts +0 -18
  152. package/.cache/typescript/5.4/node_modules/undici-types/cache.d.ts +0 -36
  153. package/.cache/typescript/5.4/node_modules/undici-types/client.d.ts +0 -97
  154. package/.cache/typescript/5.4/node_modules/undici-types/connector.d.ts +0 -34
  155. package/.cache/typescript/5.4/node_modules/undici-types/content-type.d.ts +0 -21
  156. package/.cache/typescript/5.4/node_modules/undici-types/cookies.d.ts +0 -28
  157. package/.cache/typescript/5.4/node_modules/undici-types/diagnostics-channel.d.ts +0 -67
  158. package/.cache/typescript/5.4/node_modules/undici-types/dispatcher.d.ts +0 -241
  159. package/.cache/typescript/5.4/node_modules/undici-types/errors.d.ts +0 -128
  160. package/.cache/typescript/5.4/node_modules/undici-types/fetch.d.ts +0 -209
  161. package/.cache/typescript/5.4/node_modules/undici-types/file.d.ts +0 -39
  162. package/.cache/typescript/5.4/node_modules/undici-types/filereader.d.ts +0 -54
  163. package/.cache/typescript/5.4/node_modules/undici-types/formdata.d.ts +0 -108
  164. package/.cache/typescript/5.4/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  165. package/.cache/typescript/5.4/node_modules/undici-types/global-origin.d.ts +0 -7
  166. package/.cache/typescript/5.4/node_modules/undici-types/handlers.d.ts +0 -9
  167. package/.cache/typescript/5.4/node_modules/undici-types/header.d.ts +0 -4
  168. package/.cache/typescript/5.4/node_modules/undici-types/index.d.ts +0 -63
  169. package/.cache/typescript/5.4/node_modules/undici-types/interceptors.d.ts +0 -5
  170. package/.cache/typescript/5.4/node_modules/undici-types/mock-agent.d.ts +0 -50
  171. package/.cache/typescript/5.4/node_modules/undici-types/mock-client.d.ts +0 -25
  172. package/.cache/typescript/5.4/node_modules/undici-types/mock-errors.d.ts +0 -12
  173. package/.cache/typescript/5.4/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  174. package/.cache/typescript/5.4/node_modules/undici-types/mock-pool.d.ts +0 -25
  175. package/.cache/typescript/5.4/node_modules/undici-types/package.json +0 -55
  176. package/.cache/typescript/5.4/node_modules/undici-types/patch.d.ts +0 -71
  177. package/.cache/typescript/5.4/node_modules/undici-types/pool-stats.d.ts +0 -19
  178. package/.cache/typescript/5.4/node_modules/undici-types/pool.d.ts +0 -28
  179. package/.cache/typescript/5.4/node_modules/undici-types/proxy-agent.d.ts +0 -30
  180. package/.cache/typescript/5.4/node_modules/undici-types/readable.d.ts +0 -61
  181. package/.cache/typescript/5.4/node_modules/undici-types/webidl.d.ts +0 -220
  182. package/.cache/typescript/5.4/node_modules/undici-types/websocket.d.ts +0 -131
  183. package/.cache/typescript/5.4/package-lock.json +0 -146
  184. package/.cache/typescript/5.4/package.json +0 -1
  185. package/.replit +0 -21
  186. package/replit.nix +0 -3
@@ -1,76 +0,0 @@
1
- /* eslint no-console: "off" */
2
-
3
- var asynckit = require('./')
4
- , async = require('async')
5
- , assert = require('assert')
6
- , expected = 0
7
- ;
8
-
9
- var Benchmark = require('benchmark');
10
- var suite = new Benchmark.Suite;
11
-
12
- var source = [];
13
- for (var z = 1; z < 100; z++)
14
- {
15
- source.push(z);
16
- expected += z;
17
- }
18
-
19
- suite
20
- // add tests
21
-
22
- .add('async.map', function(deferred)
23
- {
24
- var total = 0;
25
-
26
- async.map(source,
27
- function(i, cb)
28
- {
29
- setImmediate(function()
30
- {
31
- total += i;
32
- cb(null, total);
33
- });
34
- },
35
- function(err, result)
36
- {
37
- assert.ifError(err);
38
- assert.equal(result[result.length - 1], expected);
39
- deferred.resolve();
40
- });
41
- }, {'defer': true})
42
-
43
-
44
- .add('asynckit.parallel', function(deferred)
45
- {
46
- var total = 0;
47
-
48
- asynckit.parallel(source,
49
- function(i, cb)
50
- {
51
- setImmediate(function()
52
- {
53
- total += i;
54
- cb(null, total);
55
- });
56
- },
57
- function(err, result)
58
- {
59
- assert.ifError(err);
60
- assert.equal(result[result.length - 1], expected);
61
- deferred.resolve();
62
- });
63
- }, {'defer': true})
64
-
65
-
66
- // add listeners
67
- .on('cycle', function(ev)
68
- {
69
- console.log(String(ev.target));
70
- })
71
- .on('complete', function()
72
- {
73
- console.log('Fastest is ' + this.filter('fastest').map('name'));
74
- })
75
- // run async
76
- .run({ 'async': true });
@@ -1,6 +0,0 @@
1
- module.exports =
2
- {
3
- parallel : require('./parallel.js'),
4
- serial : require('./serial.js'),
5
- serialOrdered : require('./serialOrdered.js')
6
- };
@@ -1,29 +0,0 @@
1
- // API
2
- module.exports = abort;
3
-
4
- /**
5
- * Aborts leftover active jobs
6
- *
7
- * @param {object} state - current state object
8
- */
9
- function abort(state)
10
- {
11
- Object.keys(state.jobs).forEach(clean.bind(state));
12
-
13
- // reset leftover jobs
14
- state.jobs = {};
15
- }
16
-
17
- /**
18
- * Cleans up leftover job by invoking abort function for the provided job id
19
- *
20
- * @this state
21
- * @param {string|number} key - job id to abort
22
- */
23
- function clean(key)
24
- {
25
- if (typeof this.jobs[key] == 'function')
26
- {
27
- this.jobs[key]();
28
- }
29
- }
@@ -1,34 +0,0 @@
1
- var defer = require('./defer.js');
2
-
3
- // API
4
- module.exports = async;
5
-
6
- /**
7
- * Runs provided callback asynchronously
8
- * even if callback itself is not
9
- *
10
- * @param {function} callback - callback to invoke
11
- * @returns {function} - augmented callback
12
- */
13
- function async(callback)
14
- {
15
- var isAsync = false;
16
-
17
- // check if async happened
18
- defer(function() { isAsync = true; });
19
-
20
- return function async_callback(err, result)
21
- {
22
- if (isAsync)
23
- {
24
- callback(err, result);
25
- }
26
- else
27
- {
28
- defer(function nextTick_callback()
29
- {
30
- callback(err, result);
31
- });
32
- }
33
- };
34
- }
@@ -1,26 +0,0 @@
1
- module.exports = defer;
2
-
3
- /**
4
- * Runs provided function on next iteration of the event loop
5
- *
6
- * @param {function} fn - function to run
7
- */
8
- function defer(fn)
9
- {
10
- var nextTick = typeof setImmediate == 'function'
11
- ? setImmediate
12
- : (
13
- typeof process == 'object' && typeof process.nextTick == 'function'
14
- ? process.nextTick
15
- : null
16
- );
17
-
18
- if (nextTick)
19
- {
20
- nextTick(fn);
21
- }
22
- else
23
- {
24
- setTimeout(fn, 0);
25
- }
26
- }
@@ -1,75 +0,0 @@
1
- var async = require('./async.js')
2
- , abort = require('./abort.js')
3
- ;
4
-
5
- // API
6
- module.exports = iterate;
7
-
8
- /**
9
- * Iterates over each job object
10
- *
11
- * @param {array|object} list - array or object (named list) to iterate over
12
- * @param {function} iterator - iterator to run
13
- * @param {object} state - current job status
14
- * @param {function} callback - invoked when all elements processed
15
- */
16
- function iterate(list, iterator, state, callback)
17
- {
18
- // store current index
19
- var key = state['keyedList'] ? state['keyedList'][state.index] : state.index;
20
-
21
- state.jobs[key] = runJob(iterator, key, list[key], function(error, output)
22
- {
23
- // don't repeat yourself
24
- // skip secondary callbacks
25
- if (!(key in state.jobs))
26
- {
27
- return;
28
- }
29
-
30
- // clean up jobs
31
- delete state.jobs[key];
32
-
33
- if (error)
34
- {
35
- // don't process rest of the results
36
- // stop still active jobs
37
- // and reset the list
38
- abort(state);
39
- }
40
- else
41
- {
42
- state.results[key] = output;
43
- }
44
-
45
- // return salvaged results
46
- callback(error, state.results);
47
- });
48
- }
49
-
50
- /**
51
- * Runs iterator over provided job element
52
- *
53
- * @param {function} iterator - iterator to invoke
54
- * @param {string|number} key - key/index of the element in the list of jobs
55
- * @param {mixed} item - job description
56
- * @param {function} callback - invoked after iterator is done with the job
57
- * @returns {function|mixed} - job abort function or something else
58
- */
59
- function runJob(iterator, key, item, callback)
60
- {
61
- var aborter;
62
-
63
- // allow shortcut if iterator expects only two arguments
64
- if (iterator.length == 2)
65
- {
66
- aborter = iterator(item, async(callback));
67
- }
68
- // otherwise go with full three arguments
69
- else
70
- {
71
- aborter = iterator(item, key, async(callback));
72
- }
73
-
74
- return aborter;
75
- }
@@ -1,91 +0,0 @@
1
- var streamify = require('./streamify.js')
2
- , defer = require('./defer.js')
3
- ;
4
-
5
- // API
6
- module.exports = ReadableAsyncKit;
7
-
8
- /**
9
- * Base constructor for all streams
10
- * used to hold properties/methods
11
- */
12
- function ReadableAsyncKit()
13
- {
14
- ReadableAsyncKit.super_.apply(this, arguments);
15
-
16
- // list of active jobs
17
- this.jobs = {};
18
-
19
- // add stream methods
20
- this.destroy = destroy;
21
- this._start = _start;
22
- this._read = _read;
23
- }
24
-
25
- /**
26
- * Destroys readable stream,
27
- * by aborting outstanding jobs
28
- *
29
- * @returns {void}
30
- */
31
- function destroy()
32
- {
33
- if (this.destroyed)
34
- {
35
- return;
36
- }
37
-
38
- this.destroyed = true;
39
-
40
- if (typeof this.terminator == 'function')
41
- {
42
- this.terminator();
43
- }
44
- }
45
-
46
- /**
47
- * Starts provided jobs in async manner
48
- *
49
- * @private
50
- */
51
- function _start()
52
- {
53
- // first argument – runner function
54
- var runner = arguments[0]
55
- // take away first argument
56
- , args = Array.prototype.slice.call(arguments, 1)
57
- // second argument - input data
58
- , input = args[0]
59
- // last argument - result callback
60
- , endCb = streamify.callback.call(this, args[args.length - 1])
61
- ;
62
-
63
- args[args.length - 1] = endCb;
64
- // third argument - iterator
65
- args[1] = streamify.iterator.call(this, args[1]);
66
-
67
- // allow time for proper setup
68
- defer(function()
69
- {
70
- if (!this.destroyed)
71
- {
72
- this.terminator = runner.apply(null, args);
73
- }
74
- else
75
- {
76
- endCb(null, Array.isArray(input) ? [] : {});
77
- }
78
- }.bind(this));
79
- }
80
-
81
-
82
- /**
83
- * Implement _read to comply with Readable streams
84
- * Doesn't really make sense for flowing object mode
85
- *
86
- * @private
87
- */
88
- function _read()
89
- {
90
-
91
- }
@@ -1,25 +0,0 @@
1
- var parallel = require('../parallel.js');
2
-
3
- // API
4
- module.exports = ReadableParallel;
5
-
6
- /**
7
- * Streaming wrapper to `asynckit.parallel`
8
- *
9
- * @param {array|object} list - array or object (named list) to iterate over
10
- * @param {function} iterator - iterator to run
11
- * @param {function} callback - invoked when all elements processed
12
- * @returns {stream.Readable#}
13
- */
14
- function ReadableParallel(list, iterator, callback)
15
- {
16
- if (!(this instanceof ReadableParallel))
17
- {
18
- return new ReadableParallel(list, iterator, callback);
19
- }
20
-
21
- // turn on object mode
22
- ReadableParallel.super_.call(this, {objectMode: true});
23
-
24
- this._start(parallel, list, iterator, callback);
25
- }
@@ -1,25 +0,0 @@
1
- var serial = require('../serial.js');
2
-
3
- // API
4
- module.exports = ReadableSerial;
5
-
6
- /**
7
- * Streaming wrapper to `asynckit.serial`
8
- *
9
- * @param {array|object} list - array or object (named list) to iterate over
10
- * @param {function} iterator - iterator to run
11
- * @param {function} callback - invoked when all elements processed
12
- * @returns {stream.Readable#}
13
- */
14
- function ReadableSerial(list, iterator, callback)
15
- {
16
- if (!(this instanceof ReadableSerial))
17
- {
18
- return new ReadableSerial(list, iterator, callback);
19
- }
20
-
21
- // turn on object mode
22
- ReadableSerial.super_.call(this, {objectMode: true});
23
-
24
- this._start(serial, list, iterator, callback);
25
- }
@@ -1,29 +0,0 @@
1
- var serialOrdered = require('../serialOrdered.js');
2
-
3
- // API
4
- module.exports = ReadableSerialOrdered;
5
- // expose sort helpers
6
- module.exports.ascending = serialOrdered.ascending;
7
- module.exports.descending = serialOrdered.descending;
8
-
9
- /**
10
- * Streaming wrapper to `asynckit.serialOrdered`
11
- *
12
- * @param {array|object} list - array or object (named list) to iterate over
13
- * @param {function} iterator - iterator to run
14
- * @param {function} sortMethod - custom sort function
15
- * @param {function} callback - invoked when all elements processed
16
- * @returns {stream.Readable#}
17
- */
18
- function ReadableSerialOrdered(list, iterator, sortMethod, callback)
19
- {
20
- if (!(this instanceof ReadableSerialOrdered))
21
- {
22
- return new ReadableSerialOrdered(list, iterator, sortMethod, callback);
23
- }
24
-
25
- // turn on object mode
26
- ReadableSerialOrdered.super_.call(this, {objectMode: true});
27
-
28
- this._start(serialOrdered, list, iterator, sortMethod, callback);
29
- }
@@ -1,37 +0,0 @@
1
- // API
2
- module.exports = state;
3
-
4
- /**
5
- * Creates initial state object
6
- * for iteration over list
7
- *
8
- * @param {array|object} list - list to iterate over
9
- * @param {function|null} sortMethod - function to use for keys sort,
10
- * or `null` to keep them as is
11
- * @returns {object} - initial state object
12
- */
13
- function state(list, sortMethod)
14
- {
15
- var isNamedList = !Array.isArray(list)
16
- , initState =
17
- {
18
- index : 0,
19
- keyedList: isNamedList || sortMethod ? Object.keys(list) : null,
20
- jobs : {},
21
- results : isNamedList ? {} : [],
22
- size : isNamedList ? Object.keys(list).length : list.length
23
- }
24
- ;
25
-
26
- if (sortMethod)
27
- {
28
- // sort array keys based on it's values
29
- // sort object's keys just on own merit
30
- initState.keyedList.sort(isNamedList ? sortMethod : function(a, b)
31
- {
32
- return sortMethod(list[a], list[b]);
33
- });
34
- }
35
-
36
- return initState;
37
- }
@@ -1,141 +0,0 @@
1
- var async = require('./async.js');
2
-
3
- // API
4
- module.exports = {
5
- iterator: wrapIterator,
6
- callback: wrapCallback
7
- };
8
-
9
- /**
10
- * Wraps iterators with long signature
11
- *
12
- * @this ReadableAsyncKit#
13
- * @param {function} iterator - function to wrap
14
- * @returns {function} - wrapped function
15
- */
16
- function wrapIterator(iterator)
17
- {
18
- var stream = this;
19
-
20
- return function(item, key, cb)
21
- {
22
- var aborter
23
- , wrappedCb = async(wrapIteratorCallback.call(stream, cb, key))
24
- ;
25
-
26
- stream.jobs[key] = wrappedCb;
27
-
28
- // it's either shortcut (item, cb)
29
- if (iterator.length == 2)
30
- {
31
- aborter = iterator(item, wrappedCb);
32
- }
33
- // or long format (item, key, cb)
34
- else
35
- {
36
- aborter = iterator(item, key, wrappedCb);
37
- }
38
-
39
- return aborter;
40
- };
41
- }
42
-
43
- /**
44
- * Wraps provided callback function
45
- * allowing to execute snitch function before
46
- * real callback
47
- *
48
- * @this ReadableAsyncKit#
49
- * @param {function} callback - function to wrap
50
- * @returns {function} - wrapped function
51
- */
52
- function wrapCallback(callback)
53
- {
54
- var stream = this;
55
-
56
- var wrapped = function(error, result)
57
- {
58
- return finisher.call(stream, error, result, callback);
59
- };
60
-
61
- return wrapped;
62
- }
63
-
64
- /**
65
- * Wraps provided iterator callback function
66
- * makes sure snitch only called once,
67
- * but passes secondary calls to the original callback
68
- *
69
- * @this ReadableAsyncKit#
70
- * @param {function} callback - callback to wrap
71
- * @param {number|string} key - iteration key
72
- * @returns {function} wrapped callback
73
- */
74
- function wrapIteratorCallback(callback, key)
75
- {
76
- var stream = this;
77
-
78
- return function(error, output)
79
- {
80
- // don't repeat yourself
81
- if (!(key in stream.jobs))
82
- {
83
- callback(error, output);
84
- return;
85
- }
86
-
87
- // clean up jobs
88
- delete stream.jobs[key];
89
-
90
- return streamer.call(stream, error, {key: key, value: output}, callback);
91
- };
92
- }
93
-
94
- /**
95
- * Stream wrapper for iterator callback
96
- *
97
- * @this ReadableAsyncKit#
98
- * @param {mixed} error - error response
99
- * @param {mixed} output - iterator output
100
- * @param {function} callback - callback that expects iterator results
101
- */
102
- function streamer(error, output, callback)
103
- {
104
- if (error && !this.error)
105
- {
106
- this.error = error;
107
- this.pause();
108
- this.emit('error', error);
109
- // send back value only, as expected
110
- callback(error, output && output.value);
111
- return;
112
- }
113
-
114
- // stream stuff
115
- this.push(output);
116
-
117
- // back to original track
118
- // send back value only, as expected
119
- callback(error, output && output.value);
120
- }
121
-
122
- /**
123
- * Stream wrapper for finishing callback
124
- *
125
- * @this ReadableAsyncKit#
126
- * @param {mixed} error - error response
127
- * @param {mixed} output - iterator output
128
- * @param {function} callback - callback that expects final results
129
- */
130
- function finisher(error, output, callback)
131
- {
132
- // signal end of the stream
133
- // only for successfully finished streams
134
- if (!error)
135
- {
136
- this.push(null);
137
- }
138
-
139
- // back to original track
140
- callback(error, output);
141
- }
@@ -1,29 +0,0 @@
1
- var abort = require('./abort.js')
2
- , async = require('./async.js')
3
- ;
4
-
5
- // API
6
- module.exports = terminator;
7
-
8
- /**
9
- * Terminates jobs in the attached state context
10
- *
11
- * @this AsyncKitState#
12
- * @param {function} callback - final callback to invoke after termination
13
- */
14
- function terminator(callback)
15
- {
16
- if (!Object.keys(this.jobs).length)
17
- {
18
- return;
19
- }
20
-
21
- // fast forward iteration index
22
- this.index = this.size;
23
-
24
- // abort jobs
25
- abort(this);
26
-
27
- // send back results we have so far
28
- async(callback)(null, this.results);
29
- }
@@ -1,63 +0,0 @@
1
- {
2
- "name": "asynckit",
3
- "version": "0.4.0",
4
- "description": "Minimal async jobs utility library, with streams support",
5
- "main": "index.js",
6
- "scripts": {
7
- "clean": "rimraf coverage",
8
- "lint": "eslint *.js lib/*.js test/*.js",
9
- "test": "istanbul cover --reporter=json tape -- 'test/test-*.js' | tap-spec",
10
- "win-test": "tape test/test-*.js",
11
- "browser": "browserify -t browserify-istanbul test/lib/browserify_adjustment.js test/test-*.js | obake --coverage | tap-spec",
12
- "report": "istanbul report",
13
- "size": "browserify index.js | size-table asynckit",
14
- "debug": "tape test/test-*.js"
15
- },
16
- "pre-commit": [
17
- "clean",
18
- "lint",
19
- "test",
20
- "browser",
21
- "report",
22
- "size"
23
- ],
24
- "repository": {
25
- "type": "git",
26
- "url": "git+https://github.com/alexindigo/asynckit.git"
27
- },
28
- "keywords": [
29
- "async",
30
- "jobs",
31
- "parallel",
32
- "serial",
33
- "iterator",
34
- "array",
35
- "object",
36
- "stream",
37
- "destroy",
38
- "terminate",
39
- "abort"
40
- ],
41
- "author": "Alex Indigo <iam@alexindigo.com>",
42
- "license": "MIT",
43
- "bugs": {
44
- "url": "https://github.com/alexindigo/asynckit/issues"
45
- },
46
- "homepage": "https://github.com/alexindigo/asynckit#readme",
47
- "devDependencies": {
48
- "browserify": "^13.0.0",
49
- "browserify-istanbul": "^2.0.0",
50
- "coveralls": "^2.11.9",
51
- "eslint": "^2.9.0",
52
- "istanbul": "^0.4.3",
53
- "obake": "^0.1.2",
54
- "phantomjs-prebuilt": "^2.1.7",
55
- "pre-commit": "^1.1.3",
56
- "reamde": "^1.1.0",
57
- "rimraf": "^2.5.2",
58
- "size-table": "^0.2.0",
59
- "tap-spec": "^4.1.1",
60
- "tape": "^4.5.1"
61
- },
62
- "dependencies": {}
63
- }