@loaders.gl/core 3.3.0-alpha.5 → 3.3.0-alpha.7

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 (184) hide show
  1. package/dist/dist.min.js +210 -821
  2. package/dist/es5/bundle.js +0 -1
  3. package/dist/es5/bundle.js.map +1 -1
  4. package/dist/es5/core-addons/write-file-browser.js +2 -0
  5. package/dist/es5/core-addons/write-file-browser.js.map +1 -1
  6. package/dist/es5/index.js +108 -130
  7. package/dist/es5/index.js.map +1 -1
  8. package/dist/es5/iterators/batch-iterators/timed-batch-iterator.js +34 -69
  9. package/dist/es5/iterators/batch-iterators/timed-batch-iterator.js.map +1 -1
  10. package/dist/es5/iterators/make-iterator/make-array-buffer-iterator.js +9 -17
  11. package/dist/es5/iterators/make-iterator/make-array-buffer-iterator.js.map +1 -1
  12. package/dist/es5/iterators/make-iterator/make-blob-iterator.js +0 -11
  13. package/dist/es5/iterators/make-iterator/make-blob-iterator.js.map +1 -1
  14. package/dist/es5/iterators/make-iterator/make-iterator.js +0 -11
  15. package/dist/es5/iterators/make-iterator/make-iterator.js.map +1 -1
  16. package/dist/es5/iterators/make-iterator/make-stream-iterator.js +29 -75
  17. package/dist/es5/iterators/make-iterator/make-stream-iterator.js.map +1 -1
  18. package/dist/es5/iterators/make-iterator/make-string-iterator.js +1 -8
  19. package/dist/es5/iterators/make-iterator/make-string-iterator.js.map +1 -1
  20. package/dist/es5/iterators/make-stream/make-dom-stream.js +2 -17
  21. package/dist/es5/iterators/make-stream/make-dom-stream.js.map +1 -1
  22. package/dist/es5/iterators/make-stream/make-node-stream.js +0 -50
  23. package/dist/es5/iterators/make-stream/make-node-stream.js.map +1 -1
  24. package/dist/es5/javascript-utils/is-type.js +1 -34
  25. package/dist/es5/javascript-utils/is-type.js.map +1 -1
  26. package/dist/es5/lib/api/encode.js +42 -118
  27. package/dist/es5/lib/api/encode.js.map +1 -1
  28. package/dist/es5/lib/api/load-in-batches.js +1 -15
  29. package/dist/es5/lib/api/load-in-batches.js.map +1 -1
  30. package/dist/es5/lib/api/load.js +0 -18
  31. package/dist/es5/lib/api/load.js.map +1 -1
  32. package/dist/es5/lib/api/loader-options.js +4 -5
  33. package/dist/es5/lib/api/loader-options.js.map +1 -1
  34. package/dist/es5/lib/api/parse-in-batches.js +122 -196
  35. package/dist/es5/lib/api/parse-in-batches.js.map +1 -1
  36. package/dist/es5/lib/api/parse-sync.js +2 -16
  37. package/dist/es5/lib/api/parse-sync.js.map +1 -1
  38. package/dist/es5/lib/api/parse.js +3 -42
  39. package/dist/es5/lib/api/parse.js.map +1 -1
  40. package/dist/es5/lib/api/register-loaders.js +3 -14
  41. package/dist/es5/lib/api/register-loaders.js.map +1 -1
  42. package/dist/es5/lib/api/save.js +0 -11
  43. package/dist/es5/lib/api/save.js.map +1 -1
  44. package/dist/es5/lib/api/select-loader.js +18 -91
  45. package/dist/es5/lib/api/select-loader.js.map +1 -1
  46. package/dist/es5/lib/common.js.map +1 -1
  47. package/dist/es5/lib/fetch/fetch-error-message.js +1 -15
  48. package/dist/es5/lib/fetch/fetch-error-message.js.map +1 -1
  49. package/dist/es5/lib/fetch/fetch-file.js +0 -14
  50. package/dist/es5/lib/fetch/fetch-file.js.map +1 -1
  51. package/dist/es5/lib/fetch/read-array-buffer.js +0 -20
  52. package/dist/es5/lib/fetch/read-array-buffer.js.map +1 -1
  53. package/dist/es5/lib/fetch/read-file.js +0 -3
  54. package/dist/es5/lib/fetch/read-file.js.map +1 -1
  55. package/dist/es5/lib/fetch/write-file.js +0 -13
  56. package/dist/es5/lib/fetch/write-file.js.map +1 -1
  57. package/dist/es5/lib/filesystems/browser-filesystem.js +9 -55
  58. package/dist/es5/lib/filesystems/browser-filesystem.js.map +1 -1
  59. package/dist/es5/lib/filesystems/filesystem.js.map +1 -1
  60. package/dist/es5/lib/filesystems/read-array-buffer.js +0 -10
  61. package/dist/es5/lib/filesystems/read-array-buffer.js.map +1 -1
  62. package/dist/es5/lib/init.js +1 -4
  63. package/dist/es5/lib/init.js.map +1 -1
  64. package/dist/es5/lib/loader-utils/check-errors.js +0 -14
  65. package/dist/es5/lib/loader-utils/check-errors.js.map +1 -1
  66. package/dist/es5/lib/loader-utils/get-data.js +2 -64
  67. package/dist/es5/lib/loader-utils/get-data.js.map +1 -1
  68. package/dist/es5/lib/loader-utils/loader-context.js +2 -15
  69. package/dist/es5/lib/loader-utils/loader-context.js.map +1 -1
  70. package/dist/es5/lib/loader-utils/loggers.js +2 -20
  71. package/dist/es5/lib/loader-utils/loggers.js.map +1 -1
  72. package/dist/es5/lib/loader-utils/normalize-loader.js +4 -16
  73. package/dist/es5/lib/loader-utils/normalize-loader.js.map +1 -1
  74. package/dist/es5/lib/loader-utils/option-defaults.js +2 -3
  75. package/dist/es5/lib/loader-utils/option-defaults.js.map +1 -1
  76. package/dist/es5/lib/loader-utils/option-utils.js +10 -38
  77. package/dist/es5/lib/loader-utils/option-utils.js.map +1 -1
  78. package/dist/es5/lib/progress/fetch-progress.js +6 -35
  79. package/dist/es5/lib/progress/fetch-progress.js.map +1 -1
  80. package/dist/es5/lib/utils/log.js +0 -1
  81. package/dist/es5/lib/utils/log.js.map +1 -1
  82. package/dist/es5/lib/utils/mime-type-utils.js +1 -4
  83. package/dist/es5/lib/utils/mime-type-utils.js.map +1 -1
  84. package/dist/es5/lib/utils/resource-utils.js +1 -11
  85. package/dist/es5/lib/utils/resource-utils.js.map +1 -1
  86. package/dist/es5/lib/utils/response-utils.js +1 -47
  87. package/dist/es5/lib/utils/response-utils.js.map +1 -1
  88. package/dist/es5/null-loader.js +32 -67
  89. package/dist/es5/null-loader.js.map +1 -1
  90. package/dist/es5/workers/null-worker.js +0 -2
  91. package/dist/es5/workers/null-worker.js.map +1 -1
  92. package/dist/esm/bundle.js +1 -1
  93. package/dist/esm/bundle.js.map +1 -1
  94. package/dist/esm/core-addons/write-file-browser.js.map +1 -1
  95. package/dist/esm/index.js +11 -0
  96. package/dist/esm/index.js.map +1 -1
  97. package/dist/esm/iterators/batch-iterators/timed-batch-iterator.js +1 -3
  98. package/dist/esm/iterators/batch-iterators/timed-batch-iterator.js.map +1 -1
  99. package/dist/esm/iterators/make-iterator/make-array-buffer-iterator.js +5 -2
  100. package/dist/esm/iterators/make-iterator/make-array-buffer-iterator.js.map +1 -1
  101. package/dist/esm/iterators/make-iterator/make-blob-iterator.js +1 -1
  102. package/dist/esm/iterators/make-iterator/make-blob-iterator.js.map +1 -1
  103. package/dist/esm/iterators/make-iterator/make-iterator.js +1 -5
  104. package/dist/esm/iterators/make-iterator/make-iterator.js.map +1 -1
  105. package/dist/esm/iterators/make-iterator/make-stream-iterator.js +1 -5
  106. package/dist/esm/iterators/make-iterator/make-stream-iterator.js.map +1 -1
  107. package/dist/esm/iterators/make-iterator/make-string-iterator.js +2 -1
  108. package/dist/esm/iterators/make-iterator/make-string-iterator.js.map +1 -1
  109. package/dist/esm/iterators/make-stream/make-dom-stream.js +3 -6
  110. package/dist/esm/iterators/make-stream/make-dom-stream.js.map +1 -1
  111. package/dist/esm/iterators/make-stream/make-node-stream.js +0 -18
  112. package/dist/esm/iterators/make-stream/make-node-stream.js.map +1 -1
  113. package/dist/esm/javascript-utils/is-type.js +4 -2
  114. package/dist/esm/javascript-utils/is-type.js.map +1 -1
  115. package/dist/esm/lib/api/encode.js +8 -15
  116. package/dist/esm/lib/api/encode.js.map +1 -1
  117. package/dist/esm/lib/api/load-in-batches.js +1 -2
  118. package/dist/esm/lib/api/load-in-batches.js.map +1 -1
  119. package/dist/esm/lib/api/load.js +2 -1
  120. package/dist/esm/lib/api/load.js.map +1 -1
  121. package/dist/esm/lib/api/loader-options.js.map +1 -1
  122. package/dist/esm/lib/api/parse-in-batches.js +12 -12
  123. package/dist/esm/lib/api/parse-in-batches.js.map +1 -1
  124. package/dist/esm/lib/api/parse-sync.js +3 -5
  125. package/dist/esm/lib/api/parse-sync.js.map +1 -1
  126. package/dist/esm/lib/api/parse.js +5 -5
  127. package/dist/esm/lib/api/parse.js.map +1 -1
  128. package/dist/esm/lib/api/register-loaders.js +1 -2
  129. package/dist/esm/lib/api/register-loaders.js.map +1 -1
  130. package/dist/esm/lib/api/save.js.map +1 -1
  131. package/dist/esm/lib/api/select-loader.js +17 -35
  132. package/dist/esm/lib/api/select-loader.js.map +1 -1
  133. package/dist/esm/lib/common.js.map +1 -1
  134. package/dist/esm/lib/fetch/fetch-error-message.js +0 -3
  135. package/dist/esm/lib/fetch/fetch-error-message.js.map +1 -1
  136. package/dist/esm/lib/fetch/fetch-file.js +1 -3
  137. package/dist/esm/lib/fetch/fetch-file.js.map +1 -1
  138. package/dist/esm/lib/fetch/read-array-buffer.js +3 -6
  139. package/dist/esm/lib/fetch/read-array-buffer.js.map +1 -1
  140. package/dist/esm/lib/fetch/read-file.js +4 -2
  141. package/dist/esm/lib/fetch/read-file.js.map +1 -1
  142. package/dist/esm/lib/fetch/write-file.js +1 -4
  143. package/dist/esm/lib/fetch/write-file.js.map +1 -1
  144. package/dist/esm/lib/filesystems/browser-filesystem.js +6 -19
  145. package/dist/esm/lib/filesystems/browser-filesystem.js.map +1 -1
  146. package/dist/esm/lib/filesystems/filesystem.js.map +1 -1
  147. package/dist/esm/lib/filesystems/read-array-buffer.js +2 -1
  148. package/dist/esm/lib/filesystems/read-array-buffer.js.map +1 -1
  149. package/dist/esm/lib/init.js +3 -2
  150. package/dist/esm/lib/init.js.map +1 -1
  151. package/dist/esm/lib/loader-utils/check-errors.js +2 -5
  152. package/dist/esm/lib/loader-utils/check-errors.js.map +1 -1
  153. package/dist/esm/lib/loader-utils/get-data.js +3 -23
  154. package/dist/esm/lib/loader-utils/get-data.js.map +1 -1
  155. package/dist/esm/lib/loader-utils/loader-context.js +4 -6
  156. package/dist/esm/lib/loader-utils/loader-context.js.map +1 -1
  157. package/dist/esm/lib/loader-utils/loggers.js +18 -13
  158. package/dist/esm/lib/loader-utils/loggers.js.map +1 -1
  159. package/dist/esm/lib/loader-utils/normalize-loader.js +6 -9
  160. package/dist/esm/lib/loader-utils/normalize-loader.js.map +1 -1
  161. package/dist/esm/lib/loader-utils/option-defaults.js +2 -0
  162. package/dist/esm/lib/loader-utils/option-defaults.js.map +1 -1
  163. package/dist/esm/lib/loader-utils/option-utils.js +14 -14
  164. package/dist/esm/lib/loader-utils/option-utils.js.map +1 -1
  165. package/dist/esm/lib/progress/fetch-progress.js +5 -10
  166. package/dist/esm/lib/progress/fetch-progress.js.map +1 -1
  167. package/dist/esm/lib/utils/log.js +1 -0
  168. package/dist/esm/lib/utils/log.js.map +1 -1
  169. package/dist/esm/lib/utils/mime-type-utils.js +4 -4
  170. package/dist/esm/lib/utils/mime-type-utils.js.map +1 -1
  171. package/dist/esm/lib/utils/resource-utils.js +2 -7
  172. package/dist/esm/lib/utils/resource-utils.js.map +1 -1
  173. package/dist/esm/lib/utils/response-utils.js +5 -18
  174. package/dist/esm/lib/utils/response-utils.js.map +1 -1
  175. package/dist/esm/null-loader.js +2 -1
  176. package/dist/esm/null-loader.js.map +1 -1
  177. package/dist/esm/workers/null-worker.js.map +1 -1
  178. package/dist/iterators/make-stream/make-dom-stream.d.ts.map +1 -1
  179. package/dist/iterators/make-stream/make-dom-stream.js +1 -0
  180. package/dist/lib/loader-utils/loggers.d.ts +2 -1
  181. package/dist/lib/loader-utils/loggers.d.ts.map +1 -1
  182. package/dist/null-worker.js +1 -1
  183. package/package.json +4 -4
  184. package/src/iterators/make-stream/make-dom-stream.ts +1 -0
@@ -1,130 +1,95 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.timedBatchIterator = timedBatchIterator;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/awaitAsyncGenerator"));
13
-
14
10
  var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
15
-
16
- var _asyncIterator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncIterator"));
17
-
11
+ function _asyncIterator(iterable) { var method, async, sync, retry = 2; for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) { if (async && null != (method = iterable[async])) return method.call(iterable); if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable)); async = "@@asyncIterator", sync = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
12
+ function AsyncFromSyncIterator(s) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var done = r.done; return Promise.resolve(r.value).then(function (value) { return { value: value, done: done }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(s) { this.s = s, this.n = s.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, return: function _return(value) { var ret = this.s.return; return void 0 === ret ? Promise.resolve({ value: value, done: !0 }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments)); }, throw: function _throw(value) { var thr = this.s.return; return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(s); }
18
13
  function timedBatchIterator(_x, _x2) {
19
14
  return _timedBatchIterator.apply(this, arguments);
20
15
  }
21
-
22
16
  function _timedBatchIterator() {
23
17
  _timedBatchIterator = (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee(batchIterator, timeout) {
24
- var start, batches, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, batch;
25
-
18
+ var start, batches, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, batch;
26
19
  return _regenerator.default.wrap(function _callee$(_context) {
27
20
  while (1) {
28
21
  switch (_context.prev = _context.next) {
29
22
  case 0:
30
23
  start = Date.now();
31
24
  batches = [];
32
- _iteratorNormalCompletion = true;
25
+ _iteratorAbruptCompletion = false;
33
26
  _didIteratorError = false;
34
27
  _context.prev = 4;
35
- _iterator = (0, _asyncIterator2.default)(batchIterator);
36
-
28
+ _iterator = _asyncIterator(batchIterator);
37
29
  case 6:
38
30
  _context.next = 8;
39
31
  return (0, _awaitAsyncGenerator2.default)(_iterator.next());
40
-
41
32
  case 8:
42
- _step = _context.sent;
43
- _iteratorNormalCompletion = _step.done;
44
- _context.next = 12;
45
- return (0, _awaitAsyncGenerator2.default)(_step.value);
46
-
47
- case 12:
48
- _value = _context.sent;
49
-
50
- if (_iteratorNormalCompletion) {
51
- _context.next = 24;
33
+ if (!(_iteratorAbruptCompletion = !(_step = _context.sent).done)) {
34
+ _context.next = 19;
52
35
  break;
53
36
  }
54
-
55
- batch = _value;
37
+ batch = _step.value;
56
38
  batches.push(batch);
57
-
58
39
  if (!(Date.now() - start > timeout)) {
59
- _context.next = 21;
40
+ _context.next = 16;
60
41
  break;
61
42
  }
62
-
63
- _context.next = 19;
43
+ _context.next = 14;
64
44
  return batches;
65
-
66
- case 19:
45
+ case 14:
67
46
  start = Date.now();
68
47
  batches = [];
69
-
70
- case 21:
71
- _iteratorNormalCompletion = true;
48
+ case 16:
49
+ _iteratorAbruptCompletion = false;
72
50
  _context.next = 6;
73
51
  break;
74
-
75
- case 24:
76
- _context.next = 30;
52
+ case 19:
53
+ _context.next = 25;
77
54
  break;
78
-
79
- case 26:
80
- _context.prev = 26;
55
+ case 21:
56
+ _context.prev = 21;
81
57
  _context.t0 = _context["catch"](4);
82
58
  _didIteratorError = true;
83
59
  _iteratorError = _context.t0;
84
-
85
- case 30:
86
- _context.prev = 30;
87
- _context.prev = 31;
88
-
89
- if (!(!_iteratorNormalCompletion && _iterator.return != null)) {
90
- _context.next = 35;
60
+ case 25:
61
+ _context.prev = 25;
62
+ _context.prev = 26;
63
+ if (!(_iteratorAbruptCompletion && _iterator.return != null)) {
64
+ _context.next = 30;
91
65
  break;
92
66
  }
93
-
94
- _context.next = 35;
67
+ _context.next = 30;
95
68
  return (0, _awaitAsyncGenerator2.default)(_iterator.return());
96
-
97
- case 35:
98
- _context.prev = 35;
99
-
69
+ case 30:
70
+ _context.prev = 30;
100
71
  if (!_didIteratorError) {
101
- _context.next = 38;
72
+ _context.next = 33;
102
73
  break;
103
74
  }
104
-
105
75
  throw _iteratorError;
106
-
107
- case 38:
108
- return _context.finish(35);
109
-
110
- case 39:
76
+ case 33:
111
77
  return _context.finish(30);
112
-
113
- case 40:
78
+ case 34:
79
+ return _context.finish(25);
80
+ case 35:
114
81
  if (!batches) {
115
- _context.next = 43;
82
+ _context.next = 38;
116
83
  break;
117
84
  }
118
-
119
- _context.next = 43;
85
+ _context.next = 38;
120
86
  return batches;
121
-
122
- case 43:
87
+ case 38:
123
88
  case "end":
124
89
  return _context.stop();
125
90
  }
126
91
  }
127
- }, _callee, null, [[4, 26, 30, 40], [31,, 35, 39]]);
92
+ }, _callee, null, [[4, 21, 25, 35], [26,, 30, 34]]);
128
93
  }));
129
94
  return _timedBatchIterator.apply(this, arguments);
130
95
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/iterators/batch-iterators/timed-batch-iterator.ts"],"names":["timedBatchIterator","batchIterator","timeout","start","Date","now","batches","batch","push"],"mappings":";;;;;;;;;;;;;;;;;SAGuBA,kB;;;;;oFAAhB,iBAA0CC,aAA1C,EAA+EC,OAA/E;AAAA;;AAAA;AAAA;AAAA;AAAA;AACDC,YAAAA,KADC,GACOC,IAAI,CAACC,GAAL,EADP;AAEDC,YAAAA,OAFC,GAEkB,EAFlB;AAAA;AAAA;AAAA;AAAA,qDAGqBL,aAHrB;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAGYM,YAAAA,KAHZ;AAIHD,YAAAA,OAAO,CAACE,IAAR,CAAaD,KAAb;;AAJG,kBAKCH,IAAI,CAACC,GAAL,KAAaF,KAAb,GAAqBD,OALtB;AAAA;AAAA;AAAA;;AAAA;AAMD,mBAAMI,OAAN;;AANC;AAODH,YAAAA,KAAK,GAAGC,IAAI,CAACC,GAAL,EAAR;AACAC,YAAAA,OAAO,GAAG,EAAV;;AARC;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA,iBAYDA,OAZC;AAAA;AAAA;AAAA;;AAAA;AAaH,mBAAMA,OAAN;;AAbG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["/**\n * \"Debounces\" batches and returns them in groups\n */\nexport async function* timedBatchIterator<Batch>(batchIterator: AsyncIterable<Batch>, timeout) {\n let start = Date.now();\n let batches: Batch[] = [];\n for await (const batch of batchIterator) {\n batches.push(batch);\n if (Date.now() - start > timeout) {\n yield batches;\n start = Date.now();\n batches = [];\n }\n }\n\n if (batches) {\n yield batches;\n }\n}\n"],"file":"timed-batch-iterator.js"}
1
+ {"version":3,"file":"timed-batch-iterator.js","names":["timedBatchIterator","batchIterator","timeout","start","Date","now","batches","batch","push"],"sources":["../../../../src/iterators/batch-iterators/timed-batch-iterator.ts"],"sourcesContent":["/**\n * \"Debounces\" batches and returns them in groups\n */\nexport async function* timedBatchIterator<Batch>(batchIterator: AsyncIterable<Batch>, timeout) {\n let start = Date.now();\n let batches: Batch[] = [];\n for await (const batch of batchIterator) {\n batches.push(batch);\n if (Date.now() - start > timeout) {\n yield batches;\n start = Date.now();\n batches = [];\n }\n }\n\n if (batches) {\n yield batches;\n }\n}\n"],"mappings":";;;;;;;;;;;;SAGuBA,kBAAkB;EAAA;AAAA;AAAA;EAAA,kFAAlC,iBAA0CC,aAAmC,EAAEC,OAAO;IAAA;IAAA;MAAA;QAAA;UAAA;YACvFC,KAAK,GAAGC,IAAI,CAACC,GAAG,EAAE;YAClBC,OAAgB,GAAG,EAAE;YAAA;YAAA;YAAA;YAAA,2BACCL,aAAa;UAAA;YAAA;YAAA;UAAA;YAAA;cAAA;cAAA;YAAA;YAAtBM,KAAK;YACpBD,OAAO,CAACE,IAAI,CAACD,KAAK,CAAC;YAAC,MAChBH,IAAI,CAACC,GAAG,EAAE,GAAGF,KAAK,GAAGD,OAAO;cAAA;cAAA;YAAA;YAAA;YAC9B,OAAMI,OAAO;UAAA;YACbH,KAAK,GAAGC,IAAI,CAACC,GAAG,EAAE;YAClBC,OAAO,GAAG,EAAE;UAAC;YAAA;YAAA;YAAA;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAAA;cAAA;cAAA;YAAA;YAAA;YAAA;UAAA;YAAA;YAAA;cAAA;cAAA;YAAA;YAAA;UAAA;YAAA;UAAA;YAAA;UAAA;YAAA,KAIbA,OAAO;cAAA;cAAA;YAAA;YAAA;YACT,OAAMA,OAAO;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAEhB;EAAA;AAAA"}
@@ -1,29 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.makeArrayBufferIterator = makeArrayBufferIterator;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _marked = _regenerator.default.mark(makeArrayBufferIterator);
13
-
14
10
  var DEFAULT_CHUNK_SIZE = 256 * 1024;
15
11
 
16
12
  function makeArrayBufferIterator(arrayBuffer) {
17
13
  var options,
18
- _options$chunkSize,
19
- chunkSize,
20
- byteOffset,
21
- chunkByteLength,
22
- chunk,
23
- sourceArray,
24
- chunkArray,
25
- _args = arguments;
26
-
14
+ _options$chunkSize,
15
+ chunkSize,
16
+ byteOffset,
17
+ chunkByteLength,
18
+ chunk,
19
+ sourceArray,
20
+ chunkArray,
21
+ _args = arguments;
27
22
  return _regenerator.default.wrap(function makeArrayBufferIterator$(_context) {
28
23
  while (1) {
29
24
  switch (_context.prev = _context.next) {
@@ -31,26 +26,23 @@ function makeArrayBufferIterator(arrayBuffer) {
31
26
  options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
32
27
  _options$chunkSize = options.chunkSize, chunkSize = _options$chunkSize === void 0 ? DEFAULT_CHUNK_SIZE : _options$chunkSize;
33
28
  byteOffset = 0;
34
-
35
29
  case 3:
36
30
  if (!(byteOffset < arrayBuffer.byteLength)) {
37
31
  _context.next = 14;
38
32
  break;
39
33
  }
40
-
41
34
  chunkByteLength = Math.min(arrayBuffer.byteLength - byteOffset, chunkSize);
42
35
  chunk = new ArrayBuffer(chunkByteLength);
43
36
  sourceArray = new Uint8Array(arrayBuffer, byteOffset, chunkByteLength);
44
37
  chunkArray = new Uint8Array(chunk);
45
38
  chunkArray.set(sourceArray);
39
+
46
40
  byteOffset += chunkByteLength;
47
41
  _context.next = 12;
48
42
  return chunk;
49
-
50
43
  case 12:
51
44
  _context.next = 3;
52
45
  break;
53
-
54
46
  case 14:
55
47
  case "end":
56
48
  return _context.stop();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/iterators/make-iterator/make-array-buffer-iterator.ts"],"names":["makeArrayBufferIterator","DEFAULT_CHUNK_SIZE","arrayBuffer","options","chunkSize","byteOffset","byteLength","chunkByteLength","Math","min","chunk","ArrayBuffer","sourceArray","Uint8Array","chunkArray","set"],"mappings":";;;;;;;;;;;wCAUiBA,uB;;AARjB,IAAMC,kBAAkB,GAAG,MAAM,IAAjC;;AAQO,SAAUD,uBAAV,CACLE,WADK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAELC,UAAAA,OAFK,2DAEsB,EAFtB;AAAA,+BAIoCA,OAJpC,CAIEC,SAJF,EAIEA,SAJF,mCAIcH,kBAJd;AAMDI,UAAAA,UANC,GAMY,CANZ;;AAAA;AAAA,gBAQEA,UAAU,GAAGH,WAAW,CAACI,UAR3B;AAAA;AAAA;AAAA;;AAUGC,UAAAA,eAVH,GAUqBC,IAAI,CAACC,GAAL,CAASP,WAAW,CAACI,UAAZ,GAAyBD,UAAlC,EAA8CD,SAA9C,CAVrB;AAWGM,UAAAA,KAXH,GAWW,IAAIC,WAAJ,CAAgBJ,eAAhB,CAXX;AAcGK,UAAAA,WAdH,GAciB,IAAIC,UAAJ,CAAeX,WAAf,EAA4BG,UAA5B,EAAwCE,eAAxC,CAdjB;AAeGO,UAAAA,UAfH,GAegB,IAAID,UAAJ,CAAeH,KAAf,CAfhB;AAgBHI,UAAAA,UAAU,CAACC,GAAX,CAAeH,WAAf;AAGAP,UAAAA,UAAU,IAAIE,eAAd;AAnBG;AAoBH,iBAAMG,KAAN;;AApBG;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["import type {IteratorOptions} from './make-iterator';\n\nconst DEFAULT_CHUNK_SIZE = 256 * 1024;\n\n/**\n * Returns an iterator that breaks a big ArrayBuffer into chunks and yields them one-by-one\n * @param blob ArrayBuffer to iterate over\n * @param options\n * @param options.chunkSize\n */\nexport function* makeArrayBufferIterator(\n arrayBuffer: ArrayBuffer,\n options: IteratorOptions = {}\n): Iterable<ArrayBuffer> {\n const {chunkSize = DEFAULT_CHUNK_SIZE} = options;\n\n let byteOffset = 0;\n\n while (byteOffset < arrayBuffer.byteLength) {\n // Create a chunk of the right size\n const chunkByteLength = Math.min(arrayBuffer.byteLength - byteOffset, chunkSize);\n const chunk = new ArrayBuffer(chunkByteLength);\n\n // Copy data from the big chunk\n const sourceArray = new Uint8Array(arrayBuffer, byteOffset, chunkByteLength);\n const chunkArray = new Uint8Array(chunk);\n chunkArray.set(sourceArray);\n\n // yield the chunk\n byteOffset += chunkByteLength;\n yield chunk;\n }\n}\n"],"file":"make-array-buffer-iterator.js"}
1
+ {"version":3,"file":"make-array-buffer-iterator.js","names":["makeArrayBufferIterator","DEFAULT_CHUNK_SIZE","arrayBuffer","options","chunkSize","byteOffset","byteLength","chunkByteLength","Math","min","chunk","ArrayBuffer","sourceArray","Uint8Array","chunkArray","set"],"sources":["../../../../src/iterators/make-iterator/make-array-buffer-iterator.ts"],"sourcesContent":["import type {IteratorOptions} from './make-iterator';\n\nconst DEFAULT_CHUNK_SIZE = 256 * 1024;\n\n/**\n * Returns an iterator that breaks a big ArrayBuffer into chunks and yields them one-by-one\n * @param blob ArrayBuffer to iterate over\n * @param options\n * @param options.chunkSize\n */\nexport function* makeArrayBufferIterator(\n arrayBuffer: ArrayBuffer,\n options: IteratorOptions = {}\n): Iterable<ArrayBuffer> {\n const {chunkSize = DEFAULT_CHUNK_SIZE} = options;\n\n let byteOffset = 0;\n\n while (byteOffset < arrayBuffer.byteLength) {\n // Create a chunk of the right size\n const chunkByteLength = Math.min(arrayBuffer.byteLength - byteOffset, chunkSize);\n const chunk = new ArrayBuffer(chunkByteLength);\n\n // Copy data from the big chunk\n const sourceArray = new Uint8Array(arrayBuffer, byteOffset, chunkByteLength);\n const chunkArray = new Uint8Array(chunk);\n chunkArray.set(sourceArray);\n\n // yield the chunk\n byteOffset += chunkByteLength;\n yield chunk;\n }\n}\n"],"mappings":";;;;;;;;wCAUiBA,uBAAuB;AARxC,IAAMC,kBAAkB,GAAG,GAAG,GAAG,IAAI;;AAQ9B,SAAUD,uBAAuB,CACtCE,WAAwB;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;IAAA;MAAA;QAAA;UACxBC,OAAwB,2DAAG,CAAC,CAAC;UAAA,qBAEYA,OAAO,CAAzCC,SAAS,EAATA,SAAS,mCAAGH,kBAAkB;UAEjCI,UAAU,GAAG,CAAC;QAAA;UAAA,MAEXA,UAAU,GAAGH,WAAW,CAACI,UAAU;YAAA;YAAA;UAAA;UAElCC,eAAe,GAAGC,IAAI,CAACC,GAAG,CAACP,WAAW,CAACI,UAAU,GAAGD,UAAU,EAAED,SAAS,CAAC;UAC1EM,KAAK,GAAG,IAAIC,WAAW,CAACJ,eAAe,CAAC;UAGxCK,WAAW,GAAG,IAAIC,UAAU,CAACX,WAAW,EAAEG,UAAU,EAAEE,eAAe,CAAC;UACtEO,UAAU,GAAG,IAAID,UAAU,CAACH,KAAK,CAAC;UACxCI,UAAU,CAACC,GAAG,CAACH,WAAW,CAAC;;UAG3BP,UAAU,IAAIE,eAAe;UAAC;UAC9B,OAAMG,KAAK;QAAA;UAAA;UAAA;QAAA;QAAA;UAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1,24 +1,18 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.makeBlobIterator = makeBlobIterator;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/awaitAsyncGenerator"));
13
-
14
10
  var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
15
-
16
11
  var DEFAULT_CHUNK_SIZE = 1024 * 1024;
17
12
 
18
13
  function makeBlobIterator(_x, _x2) {
19
14
  return _makeBlobIterator.apply(this, arguments);
20
15
  }
21
-
22
16
  function _makeBlobIterator() {
23
17
  _makeBlobIterator = (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee(blob, options) {
24
18
  var chunkSize, offset, end, chunk;
@@ -28,27 +22,22 @@ function _makeBlobIterator() {
28
22
  case 0:
29
23
  chunkSize = (options === null || options === void 0 ? void 0 : options.chunkSize) || DEFAULT_CHUNK_SIZE;
30
24
  offset = 0;
31
-
32
25
  case 2:
33
26
  if (!(offset < blob.size)) {
34
27
  _context.next = 12;
35
28
  break;
36
29
  }
37
-
38
30
  end = offset + chunkSize;
39
31
  _context.next = 6;
40
32
  return (0, _awaitAsyncGenerator2.default)(blob.slice(offset, end).arrayBuffer());
41
-
42
33
  case 6:
43
34
  chunk = _context.sent;
44
35
  offset = end;
45
36
  _context.next = 10;
46
37
  return chunk;
47
-
48
38
  case 10:
49
39
  _context.next = 2;
50
40
  break;
51
-
52
41
  case 12:
53
42
  case "end":
54
43
  return _context.stop();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/iterators/make-iterator/make-blob-iterator.ts"],"names":["DEFAULT_CHUNK_SIZE","makeBlobIterator","blob","options","chunkSize","offset","size","end","slice","arrayBuffer","chunk"],"mappings":";;;;;;;;;;;;;;;AAEA,IAAMA,kBAAkB,GAAG,OAAO,IAAlC;;SAQuBC,gB;;;;;kFAAhB,iBACLC,IADK,EAELC,OAFK;AAAA;AAAA;AAAA;AAAA;AAAA;AAICC,YAAAA,SAJD,GAIa,CAAAD,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEC,SAAT,KAAsBJ,kBAJnC;AAMDK,YAAAA,MANC,GAMQ,CANR;;AAAA;AAAA,kBAOEA,MAAM,GAAGH,IAAI,CAACI,IAPhB;AAAA;AAAA;AAAA;;AAQGC,YAAAA,GARH,GAQSF,MAAM,GAAGD,SARlB;AAAA;AAAA,sDAUiBF,IAAI,CAACM,KAAL,CAAWH,MAAX,EAAmBE,GAAnB,EAAwBE,WAAxB,EAVjB;;AAAA;AAUGC,YAAAA,KAVH;AAYHL,YAAAA,MAAM,GAAGE,GAAT;AAZG;AAaH,mBAAMG,KAAN;;AAbG;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["import type {IteratorOptions} from './make-iterator';\n\nconst DEFAULT_CHUNK_SIZE = 1024 * 1024; // 1MB — biggest value that keeps UI responsive\n\n/**\n * Returns an iterator that breaks a big Blob into chunks and yields them one-by-one\n * @param blob Blob or File object\n * @param options\n * @param options.chunkSize\n */\nexport async function* makeBlobIterator(\n blob: Blob,\n options?: IteratorOptions\n): AsyncIterable<ArrayBuffer> {\n const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;\n\n let offset = 0;\n while (offset < blob.size) {\n const end = offset + chunkSize;\n\n const chunk = await blob.slice(offset, end).arrayBuffer();\n\n offset = end;\n yield chunk;\n }\n}\n"],"file":"make-blob-iterator.js"}
1
+ {"version":3,"file":"make-blob-iterator.js","names":["DEFAULT_CHUNK_SIZE","makeBlobIterator","blob","options","chunkSize","offset","size","end","slice","arrayBuffer","chunk"],"sources":["../../../../src/iterators/make-iterator/make-blob-iterator.ts"],"sourcesContent":["import type {IteratorOptions} from './make-iterator';\n\nconst DEFAULT_CHUNK_SIZE = 1024 * 1024; // 1MB — biggest value that keeps UI responsive\n\n/**\n * Returns an iterator that breaks a big Blob into chunks and yields them one-by-one\n * @param blob Blob or File object\n * @param options\n * @param options.chunkSize\n */\nexport async function* makeBlobIterator(\n blob: Blob,\n options?: IteratorOptions\n): AsyncIterable<ArrayBuffer> {\n const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;\n\n let offset = 0;\n while (offset < blob.size) {\n const end = offset + chunkSize;\n\n const chunk = await blob.slice(offset, end).arrayBuffer();\n\n offset = end;\n yield chunk;\n }\n}\n"],"mappings":";;;;;;;;;;AAEA,IAAMA,kBAAkB,GAAG,IAAI,GAAG,IAAI;;AAAC,SAQhBC,gBAAgB;EAAA;AAAA;AAAA;EAAA,gFAAhC,iBACLC,IAAU,EACVC,OAAyB;IAAA;IAAA;MAAA;QAAA;UAAA;YAEnBC,SAAS,GAAG,CAAAD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,SAAS,KAAIJ,kBAAkB;YAEtDK,MAAM,GAAG,CAAC;UAAA;YAAA,MACPA,MAAM,GAAGH,IAAI,CAACI,IAAI;cAAA;cAAA;YAAA;YACjBC,GAAG,GAAGF,MAAM,GAAGD,SAAS;YAAA;YAAA,0CAEVF,IAAI,CAACM,KAAK,CAACH,MAAM,EAAEE,GAAG,CAAC,CAACE,WAAW,EAAE;UAAA;YAAnDC,KAAK;YAEXL,MAAM,GAAGE,GAAG;YAAC;YACb,OAAMG,KAAK;UAAA;YAAA;YAAA;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAEd;EAAA;AAAA"}
@@ -4,39 +4,28 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.makeIterator = makeIterator;
7
-
8
7
  var _makeStringIterator = require("./make-string-iterator");
9
-
10
8
  var _makeArrayBufferIterator = require("./make-array-buffer-iterator");
11
-
12
9
  var _makeBlobIterator = require("./make-blob-iterator");
13
-
14
10
  var _makeStreamIterator = require("./make-stream-iterator");
15
-
16
11
  var _isType = require("../../javascript-utils/is-type");
17
-
18
12
  function makeIterator(data, options) {
19
13
  if (typeof data === 'string') {
20
14
  return (0, _makeStringIterator.makeStringIterator)(data, options);
21
15
  }
22
-
23
16
  if (data instanceof ArrayBuffer) {
24
17
  return (0, _makeArrayBufferIterator.makeArrayBufferIterator)(data, options);
25
18
  }
26
-
27
19
  if ((0, _isType.isBlob)(data)) {
28
20
  return (0, _makeBlobIterator.makeBlobIterator)(data, options);
29
21
  }
30
-
31
22
  if ((0, _isType.isReadableStream)(data)) {
32
23
  return (0, _makeStreamIterator.makeStreamIterator)(data, options);
33
24
  }
34
-
35
25
  if ((0, _isType.isResponse)(data)) {
36
26
  var response = data;
37
27
  return (0, _makeStreamIterator.makeStreamIterator)(response.body, options);
38
28
  }
39
-
40
29
  throw new Error('makeIterator');
41
30
  }
42
31
  //# sourceMappingURL=make-iterator.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/iterators/make-iterator/make-iterator.ts"],"names":["makeIterator","data","options","ArrayBuffer","response","body","Error"],"mappings":";;;;;;;AAEA;;AACA;;AACA;;AAEA;;AACA;;AAiBO,SAASA,YAAT,CACLC,IADK,EAELC,OAFK,EAG+C;AACpD,MAAI,OAAOD,IAAP,KAAgB,QAApB,EAA8B;AAE5B,WAAO,4CAAmBA,IAAnB,EAAyBC,OAAzB,CAAP;AACD;;AACD,MAAID,IAAI,YAAYE,WAApB,EAAiC;AAC/B,WAAO,sDAAwBF,IAAxB,EAA8BC,OAA9B,CAAP;AACD;;AACD,MAAI,oBAAOD,IAAP,CAAJ,EAAkB;AAChB,WAAO,wCAAiBA,IAAjB,EAA+BC,OAA/B,CAAP;AACD;;AACD,MAAI,8BAAiBD,IAAjB,CAAJ,EAA4B;AAC1B,WAAO,4CAAmBA,IAAnB,EAA2CC,OAA3C,CAAP;AACD;;AACD,MAAI,wBAAWD,IAAX,CAAJ,EAAsB;AACpB,QAAMG,QAAQ,GAAGH,IAAjB;AACA,WAAO,4CAAmBG,QAAQ,CAACC,IAA5B,EAAoDH,OAApD,CAAP;AACD;;AACD,QAAM,IAAII,KAAJ,CAAU,cAAV,CAAN;AACD","sourcesContent":["import type {ReadStream} from 'fs';\n\nimport {makeStringIterator} from './make-string-iterator';\nimport {makeArrayBufferIterator} from './make-array-buffer-iterator';\nimport {makeBlobIterator} from './make-blob-iterator';\nimport type {StreamIteratorOptions} from './make-stream-iterator';\nimport {makeStreamIterator} from './make-stream-iterator';\nimport {isBlob, isReadableStream, isResponse} from '../../javascript-utils/is-type';\n\n/**\n * @param [options.chunkSize]\n */\nexport type IteratorOptions = StreamIteratorOptions & {\n chunkSize?: number;\n};\n\n/**\n * Returns an iterator that breaks its input into chunks and yields them one-by-one.\n * @param data\n * @param options\n * @returns\n * This function can e.g. be used to enable data sources that can only be read atomically\n * (such as `Blob` and `File` via `FileReader`) to still be parsed in batches.\n */\nexport function makeIterator(\n data: ArrayBuffer | string | Blob | Response | ReadableStream | ReadStream,\n options?: IteratorOptions\n): AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer> {\n if (typeof data === 'string') {\n // Note: Converts string chunks to binary\n return makeStringIterator(data, options);\n }\n if (data instanceof ArrayBuffer) {\n return makeArrayBufferIterator(data, options);\n }\n if (isBlob(data)) {\n return makeBlobIterator(data as Blob, options);\n }\n if (isReadableStream(data)) {\n return makeStreamIterator(data as ReadableStream, options);\n }\n if (isResponse(data)) {\n const response = data as Response;\n return makeStreamIterator(response.body as ReadableStream, options);\n }\n throw new Error('makeIterator');\n}\n"],"file":"make-iterator.js"}
1
+ {"version":3,"file":"make-iterator.js","names":["makeIterator","data","options","makeStringIterator","ArrayBuffer","makeArrayBufferIterator","isBlob","makeBlobIterator","isReadableStream","makeStreamIterator","isResponse","response","body","Error"],"sources":["../../../../src/iterators/make-iterator/make-iterator.ts"],"sourcesContent":["import type {ReadStream} from 'fs';\n\nimport {makeStringIterator} from './make-string-iterator';\nimport {makeArrayBufferIterator} from './make-array-buffer-iterator';\nimport {makeBlobIterator} from './make-blob-iterator';\nimport type {StreamIteratorOptions} from './make-stream-iterator';\nimport {makeStreamIterator} from './make-stream-iterator';\nimport {isBlob, isReadableStream, isResponse} from '../../javascript-utils/is-type';\n\n/**\n * @param [options.chunkSize]\n */\nexport type IteratorOptions = StreamIteratorOptions & {\n chunkSize?: number;\n};\n\n/**\n * Returns an iterator that breaks its input into chunks and yields them one-by-one.\n * @param data\n * @param options\n * @returns\n * This function can e.g. be used to enable data sources that can only be read atomically\n * (such as `Blob` and `File` via `FileReader`) to still be parsed in batches.\n */\nexport function makeIterator(\n data: ArrayBuffer | string | Blob | Response | ReadableStream | ReadStream,\n options?: IteratorOptions\n): AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer> {\n if (typeof data === 'string') {\n // Note: Converts string chunks to binary\n return makeStringIterator(data, options);\n }\n if (data instanceof ArrayBuffer) {\n return makeArrayBufferIterator(data, options);\n }\n if (isBlob(data)) {\n return makeBlobIterator(data as Blob, options);\n }\n if (isReadableStream(data)) {\n return makeStreamIterator(data as ReadableStream, options);\n }\n if (isResponse(data)) {\n const response = data as Response;\n return makeStreamIterator(response.body as ReadableStream, options);\n }\n throw new Error('makeIterator');\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AAEA;AACA;AAiBO,SAASA,YAAY,CAC1BC,IAA0E,EAC1EC,OAAyB,EAC2B;EACpD,IAAI,OAAOD,IAAI,KAAK,QAAQ,EAAE;IAE5B,OAAO,IAAAE,sCAAkB,EAACF,IAAI,EAAEC,OAAO,CAAC;EAC1C;EACA,IAAID,IAAI,YAAYG,WAAW,EAAE;IAC/B,OAAO,IAAAC,gDAAuB,EAACJ,IAAI,EAAEC,OAAO,CAAC;EAC/C;EACA,IAAI,IAAAI,cAAM,EAACL,IAAI,CAAC,EAAE;IAChB,OAAO,IAAAM,kCAAgB,EAACN,IAAI,EAAUC,OAAO,CAAC;EAChD;EACA,IAAI,IAAAM,wBAAgB,EAACP,IAAI,CAAC,EAAE;IAC1B,OAAO,IAAAQ,sCAAkB,EAACR,IAAI,EAAoBC,OAAO,CAAC;EAC5D;EACA,IAAI,IAAAQ,kBAAU,EAACT,IAAI,CAAC,EAAE;IACpB,IAAMU,QAAQ,GAAGV,IAAgB;IACjC,OAAO,IAAAQ,sCAAkB,EAACE,QAAQ,CAACC,IAAI,EAAoBV,OAAO,CAAC;EACrE;EACA,MAAM,IAAIW,KAAK,CAAC,cAAc,CAAC;AACjC"}
@@ -1,22 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.makeStreamIterator = makeStreamIterator;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _asyncIterator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncIterator"));
13
-
14
9
  var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/awaitAsyncGenerator"));
15
-
16
10
  var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
17
-
18
11
  var _loaderUtils = require("@loaders.gl/loader-utils");
19
-
12
+ function _asyncIterator(iterable) { var method, async, sync, retry = 2; for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) { if (async && null != (method = iterable[async])) return method.call(iterable); if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable)); async = "@@asyncIterator", sync = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
13
+ function AsyncFromSyncIterator(s) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var done = r.done; return Promise.resolve(r.value).then(function (value) { return { value: value, done: done }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(s) { this.s = s, this.n = s.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, return: function _return(value) { var ret = this.s.return; return void 0 === ret ? Promise.resolve({ value: value, done: !0 }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments)); }, throw: function _throw(value) { var thr = this.s.return; return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(s); }
20
14
  function makeStreamIterator(stream, options) {
21
15
  return _loaderUtils.isBrowser ? makeBrowserStreamIterator(stream, options) : makeNodeStreamIterator(stream, options);
22
16
  }
@@ -24,62 +18,48 @@ function makeStreamIterator(stream, options) {
24
18
  function makeBrowserStreamIterator(_x, _x2) {
25
19
  return _makeBrowserStreamIterator.apply(this, arguments);
26
20
  }
27
-
28
21
  function _makeBrowserStreamIterator() {
29
22
  _makeBrowserStreamIterator = (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee(stream, options) {
30
23
  var reader, nextBatchPromise, currentBatchPromise, _yield$_awaitAsyncGen, done, value;
31
-
32
24
  return _regenerator.default.wrap(function _callee$(_context) {
33
25
  while (1) {
34
26
  switch (_context.prev = _context.next) {
35
27
  case 0:
36
28
  reader = stream.getReader();
37
29
  _context.prev = 1;
38
-
39
30
  case 2:
40
31
  if (!true) {
41
32
  _context.next = 16;
42
33
  break;
43
34
  }
44
-
45
35
  currentBatchPromise = nextBatchPromise || reader.read();
46
-
47
36
  if (options !== null && options !== void 0 && options._streamReadAhead) {
48
37
  nextBatchPromise = reader.read();
49
38
  }
50
-
51
39
  _context.next = 7;
52
40
  return (0, _awaitAsyncGenerator2.default)(currentBatchPromise);
53
-
54
41
  case 7:
55
42
  _yield$_awaitAsyncGen = _context.sent;
56
43
  done = _yield$_awaitAsyncGen.done;
57
44
  value = _yield$_awaitAsyncGen.value;
58
-
59
45
  if (!done) {
60
46
  _context.next = 12;
61
47
  break;
62
48
  }
63
-
64
49
  return _context.abrupt("return");
65
-
66
50
  case 12:
67
51
  _context.next = 14;
68
52
  return (0, _loaderUtils.toArrayBuffer)(value);
69
-
70
53
  case 14:
71
54
  _context.next = 2;
72
55
  break;
73
-
74
56
  case 16:
75
57
  _context.next = 21;
76
58
  break;
77
-
78
59
  case 18:
79
60
  _context.prev = 18;
80
61
  _context.t0 = _context["catch"](1);
81
62
  reader.releaseLock();
82
-
83
63
  case 21:
84
64
  case "end":
85
65
  return _context.stop();
@@ -89,95 +69,69 @@ function _makeBrowserStreamIterator() {
89
69
  }));
90
70
  return _makeBrowserStreamIterator.apply(this, arguments);
91
71
  }
92
-
93
72
  function makeNodeStreamIterator(_x3, _x4) {
94
73
  return _makeNodeStreamIterator.apply(this, arguments);
95
74
  }
96
-
97
75
  function _makeNodeStreamIterator() {
98
76
  _makeNodeStreamIterator = (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee2(stream, options) {
99
- var _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, chunk;
100
-
77
+ var _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, chunk;
101
78
  return _regenerator.default.wrap(function _callee2$(_context2) {
102
79
  while (1) {
103
80
  switch (_context2.prev = _context2.next) {
104
81
  case 0:
105
- _iteratorNormalCompletion = true;
82
+ _iteratorAbruptCompletion = false;
106
83
  _didIteratorError = false;
107
84
  _context2.prev = 2;
108
- _iterator = (0, _asyncIterator2.default)(stream);
109
-
85
+ _iterator = _asyncIterator(stream);
110
86
  case 4:
111
87
  _context2.next = 6;
112
88
  return (0, _awaitAsyncGenerator2.default)(_iterator.next());
113
-
114
89
  case 6:
115
- _step = _context2.sent;
116
- _iteratorNormalCompletion = _step.done;
117
- _context2.next = 10;
118
- return (0, _awaitAsyncGenerator2.default)(_step.value);
119
-
120
- case 10:
121
- _value = _context2.sent;
122
-
123
- if (_iteratorNormalCompletion) {
124
- _context2.next = 18;
90
+ if (!(_iteratorAbruptCompletion = !(_step = _context2.sent).done)) {
91
+ _context2.next = 13;
125
92
  break;
126
93
  }
127
-
128
- chunk = _value;
129
- _context2.next = 15;
94
+ chunk = _step.value;
95
+ _context2.next = 10;
130
96
  return (0, _loaderUtils.toArrayBuffer)(chunk);
131
-
132
- case 15:
133
- _iteratorNormalCompletion = true;
97
+ case 10:
98
+ _iteratorAbruptCompletion = false;
134
99
  _context2.next = 4;
135
100
  break;
136
-
137
- case 18:
138
- _context2.next = 24;
101
+ case 13:
102
+ _context2.next = 19;
139
103
  break;
140
-
141
- case 20:
142
- _context2.prev = 20;
104
+ case 15:
105
+ _context2.prev = 15;
143
106
  _context2.t0 = _context2["catch"](2);
144
107
  _didIteratorError = true;
145
108
  _iteratorError = _context2.t0;
146
-
147
- case 24:
148
- _context2.prev = 24;
149
- _context2.prev = 25;
150
-
151
- if (!(!_iteratorNormalCompletion && _iterator.return != null)) {
152
- _context2.next = 29;
109
+ case 19:
110
+ _context2.prev = 19;
111
+ _context2.prev = 20;
112
+ if (!(_iteratorAbruptCompletion && _iterator.return != null)) {
113
+ _context2.next = 24;
153
114
  break;
154
115
  }
155
-
156
- _context2.next = 29;
116
+ _context2.next = 24;
157
117
  return (0, _awaitAsyncGenerator2.default)(_iterator.return());
158
-
159
- case 29:
160
- _context2.prev = 29;
161
-
118
+ case 24:
119
+ _context2.prev = 24;
162
120
  if (!_didIteratorError) {
163
- _context2.next = 32;
121
+ _context2.next = 27;
164
122
  break;
165
123
  }
166
-
167
124
  throw _iteratorError;
168
-
169
- case 32:
170
- return _context2.finish(29);
171
-
172
- case 33:
125
+ case 27:
173
126
  return _context2.finish(24);
174
-
175
- case 34:
127
+ case 28:
128
+ return _context2.finish(19);
129
+ case 29:
176
130
  case "end":
177
131
  return _context2.stop();
178
132
  }
179
133
  }
180
- }, _callee2, null, [[2, 20, 24, 34], [25,, 29, 33]]);
134
+ }, _callee2, null, [[2, 15, 19, 29], [20,, 24, 28]]);
181
135
  }));
182
136
  return _makeNodeStreamIterator.apply(this, arguments);
183
137
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/iterators/make-iterator/make-stream-iterator.ts"],"names":["makeStreamIterator","stream","options","isBrowser","makeBrowserStreamIterator","makeNodeStreamIterator","reader","getReader","currentBatchPromise","nextBatchPromise","read","_streamReadAhead","done","value","releaseLock","chunk"],"mappings":";;;;;;;;;;;;;;;;;AACA;;AAUO,SAASA,kBAAT,CACLC,MADK,EAELC,OAFK,EAGuB;AAC5B,SAAOC,yBACHC,yBAAyB,CAACH,MAAD,EAA2BC,OAA3B,CADtB,GAEHG,sBAAsB,CAACJ,MAAD,EAAqBC,OAArB,CAF1B;AAGD;;SAOeE,yB;;;;;2FAAhB,iBACEH,MADF,EAEEC,OAFF;AAAA;;AAAA;AAAA;AAAA;AAAA;AAaQI,YAAAA,MAbR,GAaiBL,MAAM,CAACM,SAAP,EAbjB;AAAA;;AAAA;AAAA,iBAmBW,IAnBX;AAAA;AAAA;AAAA;;AAoBYC,YAAAA,mBApBZ,GAoBkCC,gBAAgB,IAAIH,MAAM,CAACI,IAAP,EApBtD;;AAuBM,gBAAIR,OAAJ,aAAIA,OAAJ,eAAIA,OAAO,CAAES,gBAAb,EAA+B;AAC7BF,cAAAA,gBAAgB,GAAGH,MAAM,CAACI,IAAP,EAAnB;AACD;;AAzBP;AAAA,sDA4BkCF,mBA5BlC;;AAAA;AAAA;AA4BaI,YAAAA,IA5Bb,yBA4BaA,IA5Bb;AA4BmBC,YAAAA,KA5BnB,yBA4BmBA,KA5BnB;;AAAA,iBA8BUD,IA9BV;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;AAkCM,mBAAM,gCAAcC,KAAd,CAAN;;AAlCN;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAuCIP,YAAAA,MAAM,CAACQ,WAAP;;AAvCJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;SAgDgBT,sB;;;;;wFAAhB,kBACEJ,MADF,EAEEC,OAFF;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qDAM4BD,MAN5B;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAMmBc,YAAAA,KANnB;AAAA;AAOI,mBAAM,gCAAcA,KAAd,CAAN;;AAPJ;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["import type {Readable} from 'stream';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\n\nexport type StreamIteratorOptions = {\n _streamReadAhead?: boolean;\n};\n\n/**\n * Returns an async iterable that reads from a stream (works in both Node.js and browsers)\n * @param stream stream to iterator over\n */\nexport function makeStreamIterator(\n stream: ReadableStream | Readable,\n options?: StreamIteratorOptions\n): AsyncIterable<ArrayBuffer> {\n return isBrowser\n ? makeBrowserStreamIterator(stream as ReadableStream, options)\n : makeNodeStreamIterator(stream as Readable, options);\n}\n\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @see https://jakearchibald.com/2017/async-iterators-and-generators/#making-streams-iterate\n */\nasync function* makeBrowserStreamIterator(\n stream: ReadableStream,\n options?: StreamIteratorOptions\n): AsyncIterable<ArrayBuffer> {\n // WhatWG: stream is supposed to have a `getIterator` method\n // if (typeof stream.getIterator === 'function') {\n // return stream.getIterator();\n // }\n // if (typeof stream[Symbol.asyncIterator] === 'function') {\n // return makeToArrayBufferIterator(stream);\n // }\n\n // In the browser, we first need to get a lock on the stream\n const reader = stream.getReader();\n\n let nextBatchPromise: Promise<{done?: boolean; value?: Uint8Array}> | undefined;\n\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const currentBatchPromise = nextBatchPromise || reader.read();\n // Issue a read for an additional batch, while we await the next batch\n // Idea is to make fetching happen in parallel with processing / parsing\n if (options?._streamReadAhead) {\n nextBatchPromise = reader.read();\n }\n // Read from the stream\n // value is a Uint8Array\n const {done, value} = await currentBatchPromise;\n // Exit if we're done\n if (done) {\n return;\n }\n // Else yield the chunk\n yield toArrayBuffer(value);\n }\n } catch (error) {\n // TODO - examples makes it look like this should always be called,\n // but that generates exceptions so only call it if we do not reach the end\n reader.releaseLock();\n }\n}\n\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @note Requires Node.js >= 10\n */\nasync function* makeNodeStreamIterator(\n stream: Readable,\n options?: StreamIteratorOptions\n): AsyncIterable<ArrayBuffer> {\n // Hacky test for node version to ensure we don't call bad polyfills\n // NODE 10+: stream is an asyncIterator\n for await (const chunk of stream) {\n yield toArrayBuffer(chunk); // Coerce each chunk to ArrayBuffer\n }\n}\n/* TODO - remove NODE < 10\n * @see https://github.com/bustle/streaming-iterables, MIT license\n *\n if (typeof stream[Symbol.asyncIterator] === 'function') {\n return;\n }\n\n // TODO - check if is this ever used in Node 10+?\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const data = stream.read();\n if (data !== null) {\n yield toArrayBuffer(data);\n // eslint-disable-next-line no-continue\n continue;\n }\n if (stream._readableState?.ended) {\n return;\n }\n await onceReadable(stream);\n }\n\nasync function onceReadable(stream: Readable): Promise<any> {\n return new Promise((resolve) => {\n stream.once('readable', resolve);\n });\n}\n */\n"],"file":"make-stream-iterator.js"}
1
+ {"version":3,"file":"make-stream-iterator.js","names":["makeStreamIterator","stream","options","isBrowser","makeBrowserStreamIterator","makeNodeStreamIterator","reader","getReader","currentBatchPromise","nextBatchPromise","read","_streamReadAhead","done","value","toArrayBuffer","releaseLock","chunk"],"sources":["../../../../src/iterators/make-iterator/make-stream-iterator.ts"],"sourcesContent":["import type {Readable} from 'stream';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\n\nexport type StreamIteratorOptions = {\n _streamReadAhead?: boolean;\n};\n\n/**\n * Returns an async iterable that reads from a stream (works in both Node.js and browsers)\n * @param stream stream to iterator over\n */\nexport function makeStreamIterator(\n stream: ReadableStream | Readable,\n options?: StreamIteratorOptions\n): AsyncIterable<ArrayBuffer> {\n return isBrowser\n ? makeBrowserStreamIterator(stream as ReadableStream, options)\n : makeNodeStreamIterator(stream as Readable, options);\n}\n\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @see https://jakearchibald.com/2017/async-iterators-and-generators/#making-streams-iterate\n */\nasync function* makeBrowserStreamIterator(\n stream: ReadableStream,\n options?: StreamIteratorOptions\n): AsyncIterable<ArrayBuffer> {\n // WhatWG: stream is supposed to have a `getIterator` method\n // if (typeof stream.getIterator === 'function') {\n // return stream.getIterator();\n // }\n // if (typeof stream[Symbol.asyncIterator] === 'function') {\n // return makeToArrayBufferIterator(stream);\n // }\n\n // In the browser, we first need to get a lock on the stream\n const reader = stream.getReader();\n\n let nextBatchPromise: Promise<{done?: boolean; value?: Uint8Array}> | undefined;\n\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const currentBatchPromise = nextBatchPromise || reader.read();\n // Issue a read for an additional batch, while we await the next batch\n // Idea is to make fetching happen in parallel with processing / parsing\n if (options?._streamReadAhead) {\n nextBatchPromise = reader.read();\n }\n // Read from the stream\n // value is a Uint8Array\n const {done, value} = await currentBatchPromise;\n // Exit if we're done\n if (done) {\n return;\n }\n // Else yield the chunk\n yield toArrayBuffer(value);\n }\n } catch (error) {\n // TODO - examples makes it look like this should always be called,\n // but that generates exceptions so only call it if we do not reach the end\n reader.releaseLock();\n }\n}\n\n/**\n * Returns an async iterable that reads from a DOM (browser) stream\n * @param stream stream to iterate from\n * @note Requires Node.js >= 10\n */\nasync function* makeNodeStreamIterator(\n stream: Readable,\n options?: StreamIteratorOptions\n): AsyncIterable<ArrayBuffer> {\n // Hacky test for node version to ensure we don't call bad polyfills\n // NODE 10+: stream is an asyncIterator\n for await (const chunk of stream) {\n yield toArrayBuffer(chunk); // Coerce each chunk to ArrayBuffer\n }\n}\n/* TODO - remove NODE < 10\n * @see https://github.com/bustle/streaming-iterables, MIT license\n *\n if (typeof stream[Symbol.asyncIterator] === 'function') {\n return;\n }\n\n // TODO - check if is this ever used in Node 10+?\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const data = stream.read();\n if (data !== null) {\n yield toArrayBuffer(data);\n // eslint-disable-next-line no-continue\n continue;\n }\n if (stream._readableState?.ended) {\n return;\n }\n await onceReadable(stream);\n }\n\nasync function onceReadable(stream: Readable): Promise<any> {\n return new Promise((resolve) => {\n stream.once('readable', resolve);\n });\n}\n */\n"],"mappings":";;;;;;;;;;AACA;AAAkE;AAAA;AAU3D,SAASA,kBAAkB,CAChCC,MAAiC,EACjCC,OAA+B,EACH;EAC5B,OAAOC,sBAAS,GACZC,yBAAyB,CAACH,MAAM,EAAoBC,OAAO,CAAC,GAC5DG,sBAAsB,CAACJ,MAAM,EAAcC,OAAO,CAAC;AACzD;;AAAC,SAOeE,yBAAyB;EAAA;AAAA;AAAA;EAAA,yFAAzC,iBACEH,MAAsB,EACtBC,OAA+B;IAAA;IAAA;MAAA;QAAA;UAAA;YAWzBI,MAAM,GAAGL,MAAM,CAACM,SAAS,EAAE;YAAA;UAAA;YAAA,KAMxB,IAAI;cAAA;cAAA;YAAA;YACHC,mBAAmB,GAAGC,gBAAgB,IAAIH,MAAM,CAACI,IAAI,EAAE;YAG7D,IAAIR,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAES,gBAAgB,EAAE;cAC7BF,gBAAgB,GAAGH,MAAM,CAACI,IAAI,EAAE;YAClC;YAAC;YAAA,0CAG2BF,mBAAmB;UAAA;YAAA;YAAxCI,IAAI,yBAAJA,IAAI;YAAEC,KAAK,yBAALA,KAAK;YAAA,KAEdD,IAAI;cAAA;cAAA;YAAA;YAAA;UAAA;YAAA;YAIR,OAAM,IAAAE,0BAAa,EAACD,KAAK,CAAC;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAK5BP,MAAM,CAACS,WAAW,EAAE;UAAC;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAExB;EAAA;AAAA;AAAA,SAOeV,sBAAsB;EAAA;AAAA;AAAA;EAAA,sFAAtC,kBACEJ,MAAgB,EAChBC,OAA+B;IAAA;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA;YAAA;YAAA,2BAILD,MAAM;UAAA;YAAA;YAAA;UAAA;YAAA;cAAA;cAAA;YAAA;YAAfe,KAAK;YAAA;YACpB,OAAM,IAAAF,0BAAa,EAACE,KAAK,CAAC;UAAA;YAAA;YAAA;YAAA;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAAA;cAAA;cAAA;YAAA;YAAA;YAAA;UAAA;YAAA;YAAA;cAAA;cAAA;YAAA;YAAA;UAAA;YAAA;UAAA;YAAA;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAE7B;EAAA;AAAA"}
@@ -1,16 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.makeStringIterator = makeStringIterator;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _marked = _regenerator.default.mark(makeStringIterator);
13
-
14
10
  var DEFAULT_CHUNK_SIZE = 256 * 1024;
15
11
 
16
12
  function makeStringIterator(string, options) {
@@ -22,23 +18,20 @@ function makeStringIterator(string, options) {
22
18
  chunkSize = (options === null || options === void 0 ? void 0 : options.chunkSize) || DEFAULT_CHUNK_SIZE;
23
19
  offset = 0;
24
20
  textEncoder = new TextEncoder();
25
-
26
21
  case 3:
27
22
  if (!(offset < string.length)) {
28
23
  _context.next = 11;
29
24
  break;
30
25
  }
31
-
32
26
  chunkLength = Math.min(string.length - offset, chunkSize);
33
27
  chunk = string.slice(offset, offset + chunkLength);
34
28
  offset += chunkLength;
29
+
35
30
  _context.next = 9;
36
31
  return textEncoder.encode(chunk);
37
-
38
32
  case 9:
39
33
  _context.next = 3;
40
34
  break;
41
-
42
35
  case 11:
43
36
  case "end":
44
37
  return _context.stop();