function skipUntil(predicate) {
    return function (iterable) {
        return __asyncGenerator(this, arguments, function* () {
            var e_18, _a;
            let i = 0;
            let canReturn = false;
            try {
                for (var iterable_16 = __asyncValues(iterable), iterable_16_1; iterable_16_1 = yield __await(iterable_16.next()), !iterable_16_1.done;) {
                    const item = iterable_16_1.value;
                    if (!canReturn) {
                        canReturn = yield __await(predicate(item, i));
                        if (canReturn) {
                            yield yield __await(item);
                        }
                        i = i + 1;
                    }
                    else {
                        yield yield __await(item);
                    }
                }
            }
            catch (e_18_1) { e_18 = { error: e_18_1 }; }
            finally {
                try {
                    if (iterable_16_1 && !iterable_16_1.done && (_a = iterable_16.return)) yield __await(_a.call(iterable_16));
                }
                finally { if (e_18) throw e_18.error; }
            }
        });
    };
}
function skipUntil(predicate) {
    return function (iterable) {
        return __asyncGenerator(this, arguments, function* () {
            var e_18, _a;
            let i = 0;
            let canReturn = false;
            try {
                for (var iterable_16 = __asyncValues(iterable), iterable_16_1; iterable_16_1 = yield __await(iterable_16.next()), !iterable_16_1.done;) {
                    const item = iterable_16_1.value;
                    if (!canReturn) {
                        canReturn = yield __await(predicate(item, i));
                        if (canReturn) {
                            yield yield __await(item);
                        }
                        i = i + 1;
                    }
                    else {
                        yield yield __await(item);
                    }
                }
            }
            catch (e_18_1) { e_18 = { error: e_18_1 }; }
            finally {
                try {
                    if (iterable_16_1 && !iterable_16_1.done && (_a = iterable_16.return)) yield __await(_a.call(iterable_16));
                }
                finally { if (e_18) throw e_18.error; }
            }
        });
    };
}
function skipUntil ( predicate ) { return function ( iterable ) { return __asyncGenerator ( this , arguments , function * ( ) { var e_18 , _a ; let i = 0 ; let canReturn = false ; try { for ( var iterable_16 = __asyncValues ( iterable ) , iterable_16_1 ; iterable_16_1 = yield __await ( iterable_16 . next ( ) ) , ! iterable_16_1 . done ; ) { const item = iterable_16_1 . value ; if ( ! canReturn ) { canReturn = yield __await ( predicate ( item , i ) ) ; if ( canReturn ) { yield yield __await ( item ) ; } i = i + 1 ; } else { yield yield __await ( item ) ; } } } catch ( e_18_1 ) { e_18 = { error : e_18_1 } ; } finally { try { if ( iterable_16_1 && ! iterable_16_1 . done && ( _a = iterable_16 . return ) ) yield __await ( _a . call ( iterable_16 ) ) ; } finally { if ( e_18 ) throw e_18 . error ; } } } ) ; } ; }
Skip items in an iterable until the passed predicate matches, then yield all items in the iterable
Skip items in an iterable until the passed predicate matches then yield all items in the iterable