All files / Player/Streams createPlayerLoadStream.js

100% Statements 6/6
100% Branches 0/0
100% Functions 2/2
100% Lines 4/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 361x 1x                   40x     6x                                          
import { withLatestFrom, map } from 'rxjs/operators';
import { zip } from 'rxjs';
 
/**
 * @param {Observable<Playback>}
 * @param {Observable<ResumePoints>}
 * @param {Observable<Config>}
 * @param {Observable<Asset>}
 * @returns {Observable<[Playback, ResumePoints, Config, Asset]>}
 */
 
const flattenStream = ([[[latestPlayback, latestResumePoints], latestConfig], latestAsset]) =>
    [latestPlayback, latestResumePoints, latestConfig, latestAsset];
 
const createPlayerLoadStream = (
    playbackUpdate$,
    resumePointsUpdate$,
    configUpdate$,
    assetUpdate$
) =>
    zip(
        playbackUpdate$,
        resumePointsUpdate$,
    )
        .pipe(
            withLatestFrom(configUpdate$),
            withLatestFrom(assetUpdate$),
            map(flattenStream)
        );
 
export {
    flattenStream,
    createPlayerLoadStream as default,
};