createForOfIteratorHelper.js (1399B)
1 import unsupportedIterableToArray from "./unsupportedIterableToArray.js"; 2 export default function _createForOfIteratorHelper(o, allowArrayLike) { 3 var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; 4 5 if (!it) { 6 if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { 7 if (it) o = it; 8 var i = 0; 9 10 var F = function F() {}; 11 12 return { 13 s: F, 14 n: function n() { 15 if (i >= o.length) return { 16 done: true 17 }; 18 return { 19 done: false, 20 value: o[i++] 21 }; 22 }, 23 e: function e(_e) { 24 throw _e; 25 }, 26 f: F 27 }; 28 } 29 30 throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); 31 } 32 33 var normalCompletion = true, 34 didErr = false, 35 err; 36 return { 37 s: function s() { 38 it = it.call(o); 39 }, 40 n: function n() { 41 var step = it.next(); 42 normalCompletion = step.done; 43 return step; 44 }, 45 e: function e(_e2) { 46 didErr = true; 47 err = _e2; 48 }, 49 f: function f() { 50 try { 51 if (!normalCompletion && it["return"] != null) it["return"](); 52 } finally { 53 if (didErr) throw err; 54 } 55 } 56 }; 57 }