| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 'use strict';var GetIntrinsic = require('get-intrinsic');var $SyntaxError = require('es-errors/syntax');var $TypeError = require('es-errors/type');var isObject = require('es-object-atoms/isObject');var $Promise = GetIntrinsic('%Promise%', true);var callBound = require('call-bound');var CreateIterResultObject = require('./CreateIterResultObject');var IteratorComplete = require('./IteratorComplete');var IteratorValue = require('./IteratorValue');var PromiseResolve = require('./PromiseResolve');var $then = callBound('Promise.prototype.then', true);// https://262.ecma-international.org/10.0/#sec-asyncfromsynciteratorcontinuationmodule.exports = function AsyncFromSyncIteratorContinuation(result) {	if (!isObject(result)) {		throw new $TypeError('Assertion failed: Type(O) is not Object');	}	if (arguments.length > 1) {		throw new $SyntaxError('although AsyncFromSyncIteratorContinuation should take a second argument, it is not used in this implementation');	}	if (!$Promise) {		throw new $SyntaxError('This environment does not support Promises.');	}	return new $Promise(function (resolve) {		var done = IteratorComplete(result); // step 2		var value = IteratorValue(result); // step 4		var valueWrapper = PromiseResolve($Promise, value); // step 6		// eslint-disable-next-line no-shadow		var onFulfilled = function (value) { // steps 8-9			return CreateIterResultObject(value, done); // step 8.a		};		resolve($then(valueWrapper, onFulfilled)); // step 11	}); // step 12};
 |