index.js
function all(subreddit) {
    const eventEmitter = new EventEmitter();

    function emitRandomImage(subreddit) {
        randomPuppy(subreddit).then(imageUrl => {
            eventEmitter.emit('data', imageUrl + '#' + subreddit);
            if (eventEmitter.listeners('data').length) {
                setTimeout(() => emitRandomImage(subreddit), 200);
            }
        });
    }

    emitRandomImage(subreddit);
    return eventEmitter;
}
function all(subreddit) {
    const eventEmitter = new EventEmitter();

    function emitRandomImage(subreddit) {
        randomPuppy(subreddit).then(imageUrl => {
            eventEmitter.emit('data', imageUrl + '#' + subreddit);
            if (eventEmitter.listeners('data').length) {
                setTimeout(() => emitRandomImage(subreddit), 200);
            }
        });
    }

    emitRandomImage(subreddit);
    return eventEmitter;
}
function all ( subreddit ) { const eventEmitter = new EventEmitter ( ) ; function emitRandomImage ( subreddit ) { randomPuppy ( subreddit ) . then ( imageUrl => { eventEmitter . emit ( 'data' , imageUrl + '#' + subreddit ) ; if ( eventEmitter . listeners ( 'data' ) . length ) { setTimeout ( ( ) => emitRandomImage ( subreddit ) , 200 ) ; } } ) ; } emitRandomImage ( subreddit ) ; return eventEmitter ; }
silly feature to play with observables
silly feature to play with observables